Facebook & Instagram Ads CSV to Dashboard
Meta Ads Manager reports are column-customizable, which means two exports from the same account, pulled on different days or by different people, can carry different header sets and metric labels for the same numbers. Normalize first so a breakdown built once keeps working across every export.
Step 1: Normalize the Export
Run the raw Ads Manager export through the Meta Ads Normalizer. It reconciles variants like "Amount spent (USD)" vs "Amount spent" or "CPC (cost per link click)" vs "CPC (all)" onto one schema covering campaign, ad set, and ad names alongside reach, impressions, clicks, spend, CPC, CTR, and results, keeping any column outside those aliases intact.
Step 2: Pick a Breakdown
Spend by Campaign
Upload the normalized CSV and Pivot Table opens pre-configured to sum spend by campaign name.
Reach by Ad Set
Compares audience reach across ad sets on the same normalized column.
Overall Account Stats
Totals and averages across spend, clicks, and CTR for the whole export.
Blend With Google Ads →
Combine paid social and paid search spend into a single normalized report.
Frequently Asked Questions
Does this work for both Facebook and Instagram ads?
Yes, both run through Meta Ads Manager and use the same underlying export, the normalizer and the breakdowns below apply to either.
Why not just filter the raw export directly?
Ads Manager lets you customize which columns a report includes, so "Amount spent (USD)" on one export and "Amount spent" on another refer to the same field. Normalizing first means the breakdown below points at the right column regardless of how the export was configured.
Reconciling multi-account exports?
The normalizer keeps unrecognized columns intact, safe to run on any Ads Manager export.
Open Meta Ads NormalizerTurn this into a saved workflow
Create a free account to save the steps from this guide as a reusable workflow and re-run it on any file, from any device.