Platform

Clean Google Ads CSV reports for analysis in Excel or BI tools

Clean Google Ads CSV exports: strip summary rows, convert percentages/currency to numbers, normalise column names.

🛡️ Your rows never leave your browser.
Why Onfyt: Detects the Google Ads 'Total:' footer row automatically—it's not always the last row, as some exports include per-account and per-MCC totals.

Interactive Sample Data

CampaignClicksImpressionsCost
Search - Brand4503200125.50
Search - NonBrand89014500410.00

How this tool works

Google Ads CSV reports contain several elements that obstruct automated processing: a 'Total:' aggregation footer row that must be excluded from per-campaign analysis, currency amounts formatted with locale-specific symbols and thousands separators ('KSh 54,225.00'), and CTR percentages as formatted strings ('3.60%') instead of numeric values. This cleaner: detects and strips the Total row and any header metadata rows, converts CTR and conversion rate strings to decimal fractions, strips currency symbols and commas from monetary columns, and normalises column names to snake_case for consistent programmatic access. Google Ads performance reports include multi-line summary metadata, total rows at the bottom, and currency symbols mixed with numeric cost and conversion metrics. These non-tabular elements crash automated ETL scripts and Python pandas loaders. DataFix removes leading header commentary and trailing total rows, strips currency symbols and percentage signs, and outputs clean numerical CSVs ready for immediate SQL analysis. Google Ads reports feature leading metadata commentary rows and trailing summary totals that crash automated SQL loaders. Stripping non-tabular lines and currency symbols outputs pristine numerical data ready for pipeline ingestion. Google Ads reporting downloads bundle metadata headers, date ranges, and footer totals that crash automated CSV parsers. Removing non-tabular commentary lines and stripping currency symbols yields pristine numerical records ready for SQL ingestion.

Things that usually go wrong

  • Google Ads sometimes changes column names between report types — check the column mapping if a column appears misnamed.
  • Currency columns are normalised to the account currency's base unit (e.g. dollars, not cents).

Edge cases we tested

🧪 Report with multiple Total rows (per-account subtotals)

All rows starting with 'Total' or 'Subtotal' removed.

🧪 CTR of 0.00%

Converted to 0.0 without error.

🧪 Cost in USD vs KES in same export (multi-currency account)

Currency symbol preserved as a separate _currency column; numeric amount extracted.

Frequently Asked Questions

What is the '--' value?

Google Ads uses '--' to represent 'no data' (e.g. no clicks for that row). The tool converts '--' to 0 for numeric columns and empty for text columns.

Does this work for Google Ads Editor exports?

Yes — Google Ads Editor CSV exports use a similar format and are handled correctly.

Related tools

Platform

Shopify Customer Export Cleaner

Normalize Shopify customer exports: merge split address fields, clean phones, and strip internal metadata.

Open Tool →
Platform

Stripe CSV to JSON

Convert Stripe balance and payment CSV exports to clean JSON with amount conversion and metadata parsing.

Open Tool →
Platform

Google Contacts CSV Fixer

Fix Google Contacts CSV exports to import into Outlook, Apple Contacts, or CRM platforms.

Open Tool →