Handle Google Ads currency and cost micros correctly
Prevent million-fold cost errors and misleading multi-account totals in Google Ads API reporting.
API fields can use different units even when their names sound similar. Google Ads cost fields labelled in micros need the appropriate conversion before display. Keep account currency attached to the amount, and never assume that every value field shares the same scaling.
Work through it, step by step.
Inspect the exact field names and types returned by the report. Identify which cost fields are in micros before applying formatting or calculations.
Convert micros to currency units by dividing by one million. Check a known account value to catch double conversion or an omitted conversion.
Keep accounts with different currencies separate, or document a deliberate exchange-rate method and date if a separate analysis requires conversion.
Make it concrete.
A cost_micros value of 12,500,000 represents 12.50 account-currency units. Displaying it as 12.5 million or dividing it twice would make every efficiency ratio misleading.
What to keep in mind.
Conversion values and other amounts may have their own definitions. A generic function that rescales every numeric field containing “value” is unsafe.
Your next useful step.
Carry field units through extraction, calculation and presentation. Include a small known-value check whenever you add a new financial reporting field.
Working with this in Liftaven
Work within one ad account, currency and reporting window at a time. Keep the conversion action definition beside the result. Liftaven supports read-only Google Ads analysis; campaign edits, experiments and measurement configuration belong in Google Ads or your tagging tools.
Explore the workspaceSources & context
This note combines original practical guidance with the reporting references below. Follow provider documentation for current definitions and availability; suggested investigations are not guarantees of a particular result.