LinkedIn Ads export to dashboard
LinkedIn Ads exports open with a preamble. This page skips it.
Export performance from Campaign Manager, drop the file here, and the several rows of account and date metadata above the header are skipped automatically. Spend is read in the account currency, campaigns roll up into Campaign Group so a whole program can be judged at once, and Leads is understood as a column that only fills in for lead gen form objectives rather than as missing data everywhere else.
Prefer the full explorer? Open the app, or start from the generic dashboard builder.
The most expensive click in digital, in the most awkward CSV
LinkedIn Campaign Manager writes a header block before the header. Account name, report type, the date range and a blank line or two sit above the row that names the columns, and the number of those lines is not fixed. That single detail is why so many LinkedIn exports end up manually cleaned in a spreadsheet before anyone can look at them, and why an automated pipeline built around a hard-coded skip of four rows breaks the first time LinkedIn adds a line.
Once you are past it, the file is genuinely good, with one structural thing to understand. LinkedIn organizes work as campaigns inside Campaign Groups, and the group is usually what a marketer actually means by the ABM program or the webinar push. Reading campaign by campaign gives you twenty rows of noise. Rolling up by Campaign Group gives you the four numbers a quarterly review needs, which is why this page leads with the group and lets you drill down rather than the other way around.
How to export from LinkedIn Ads
- Open Campaign Manager Sign in at linkedin.com/campaignmanager and choose the correct ad account from the switcher at the top. Each account exports on its own, and an agency running several will need one file per client.
- Pick the reporting level and date range Above the performance table, choose whether you want campaign, campaign group or creative level rows. Set the date range to something long enough to be worth charting, and check the time granularity control while you are there.
- Choose the column set The Columns dropdown has presets such as Performance, Conversions and Leads. The default preset leaves out Cost Per Lead and video metrics, so pick the set that covers the objectives your account actually ran.
- Export as CSV The export icon sits at the top right of the table. Choose CSV rather than XLSX. LinkedIn assembles the file with an account and date header block above the column names, which is normal and expected.
- Drop it here The preamble is detected and skipped, Campaign Group becomes the top-level chip, and Objective becomes the filter that stops incompatible campaigns being averaged together.
Dates in this export are labeled in UTC, which is stated in the Start Date column name itself. If your team reports on a local business week, shift the axis before comparing against a CRM report that uses local dates, or Monday numbers will bleed into Sunday.
Try with sample LinkedIn Ads data (the same columns, 96 rows, no upload needed).
What the dashboard shows
Every panel below is built from a column that is actually in the export, named the way LinkedIn Ads names it.
- Spend by Campaign Group. The rollup that matches how the account is actually organized, with campaigns nested underneath for the drill-down.
- Cost per lead where it applies. Only for lead gen form campaigns, since Cost Per Lead on a brand awareness campaign is a division by zero pretending to be insight.
- CTR and CPM by objective. Campaign Type and Objective as filters, because sponsored content and message ads sit in completely different cost ranges.
- Spend over time. Start Date as the axis, with the UTC labeling made explicit so nobody argues about the last day of the month.
- Lead volume against conversions. Two different columns measuring two different things, shown side by side rather than blended into one funnel number.
- Video view efficiency. Video Views against Total Spent for the campaigns that ran video, with the rest of the account excluded from the calculation.
Start Date (in UTC),Campaign Name,Campaign Group,Campaign Type,Objective,Impressions,Clicks,Click Through Rate,Average CPC,Average CPM,Total Spent,Leads,Cost Per Lead,Conversions,Video Views
What to know before you open a Campaign Manager export
- There is a multi-row preamble. Account name, report type and date range sit above the header, and the count of those lines varies by report type. A fixed skip of three or four rows is a bug waiting to happen.
- Total Spent is in the account currency. The value carries no symbol and the header does not name the currency, so two accounts billed in different currencies produce files that look identical and cannot be added.
- Campaign Group is the useful grain. Campaigns are often split by audience or geography inside a single program. Judging them individually makes every one look small and every budget decision look wrong.
- Leads only fills for lead gen forms. A sponsored content campaign driving to a website leaves Leads and Cost Per Lead empty. That is correct, not missing, and it correlates exactly with Objective.
- Conversions and Leads are different things. Leads counts native form submissions. Conversions counts what the Insight Tag saw on your own site. Adding them together double counts anyone who did both.
- Rate columns are precomputed. Click Through Rate, Average CPC and Average CPM are calculated per row. Averaging them across rows weights a hundred-dollar day the same as a ten-thousand-dollar one.
LinkedIn clicks cost enough that the reporting deserves care. Skip the preamble properly, roll up to the group, and never compute a cost per lead for a campaign that had no form on it. The rest of the file is honest.
Frequently asked questions
Why does my LinkedIn export have junk rows at the top?
Campaign Manager writes an account and report header block above the column names, covering the account, the report type and the date range. It is meant for a human opening the file in Excel. Because the number of lines is not constant, a parser that skips a fixed count will eventually misread a file. This page finds the header by looking for the expected column names instead.
What currency is Total Spent in?
The billing currency of the ad account, with no symbol in the value and no mention of it in the header. If you manage accounts across regions, the only way to know is to check the account settings in Campaign Manager. Add a currency column yourself before merging two accounts, otherwise you will sum euros into pounds and the total will look plausible enough to go unnoticed.
Why is my Leads column mostly empty?
Because Leads counts submissions of LinkedIn native lead gen forms, and most accounts run a mix of objectives. A traffic or brand awareness campaign has no form to submit, so the cell is legitimately blank and Cost Per Lead is blank with it. Group by Objective and the pattern becomes obvious. Treating those blanks as zeros drags every average cost per lead downward.
Should I report by campaign or by campaign group?
Group, for anything a stakeholder will read. LinkedIn accounts tend to split one program across several campaigns by audience segment or region, so campaign-level rows fragment a coherent effort into pieces that all look underfunded. Campaign Group is the layer that matches how the work was planned. Drill into campaigns when you are optimizing rather than when you are reporting.
Are Conversions and Leads the same number counted twice?
Not the same, and yes, potentially overlapping. Leads comes from native forms filled without leaving LinkedIn. Conversions comes from the Insight Tag firing on your own site. Someone can submit a form and then visit a thank you page that also counts, so adding the two columns overstates the funnel. Pick the one that matches your definition of a qualified action and stay with it.
Can I combine several LinkedIn ad accounts?
Yes, once you have solved two things. Add a column naming the account, because nothing in the row identifies it after the preamble is stripped. Then confirm every account bills in the same currency, since Total Spent carries no unit. With those handled, merge the files and the group breakdown works across the whole portfolio.
Related tools
Open a LinkedIn Ads report with the preamble already handled
96 rows across four campaign groups and three objectives, with the metadata block on top and Leads populated only where a form actually ran.
Open the sample LinkedIn Ads dashboard