HomeBlogHow to combine exports from several platforms into one report
How to combine exports from several platforms into one report

How to combine exports from several platforms into one report

Aditya SinghAditya Singh6 September 20267 min read

Search this and every answer is the same: connect your accounts to a tool that pulls the data by API, and stop exporting. Useful, if you're willing to buy that tool and hand it access to your client's accounts. Less useful if you've already got four CSVs in a downloads folder and a report due. Combining them by hand is four decisions, and three of them quietly produce a wrong number if you get them backwards.

Line the date ranges up first

Do this before you open a single file. Pick the reporting month, then go back and re-export every platform to that exact range. It sounds obvious and it is the single most common way a combined report goes wrong — you pull Instagram for the calendar month, LinkedIn for "last 30 days", and TikTok for whatever range the tab was already showing. Nothing in the finished report tells you the three numbers cover three different windows.

Some exports won't let you constrain the range at all. Post-level tables in particular tend to come out as "all posts", which for a client posting steadily means the file spans months. Those extra rows are not bonus data. If you sum the column, you are reporting a quarter as a month. Filter to the reporting period first, then total.

One more, because it costs an evening when it happens: check that the column you're treating as the date actually holds dates. A column of small integers is a count, not a date — and a spreadsheet will happily read 0, 1 and 35 as years, filing your August report across 1999, 2000 and 2034.

What adds up, and what never does

Once the ranges match, every metric you're carrying falls into one of three buckets, and each bucket combines differently. This is the part no cross-platform reporting guide seems willing to spell out.

  1. Event counts — impressions, engagements, clicks, likes, comments, shares, saves, video views, spend, conversions. These add up, both down the rows of one file and across platforms. Reach is the honest exception: adding Instagram reach to LinkedIn reach does not give you unique people, because someone who follows the client on both is counted twice. It's still the number everyone reports; just don't call it "unique people reached" in the summary.
  2. Followers — a running total, not an event. Every row of a daily export repeats the whole audience, so summing thirty rows reports thirty times the client's following. Take the period's peak for each platform, then add the platforms together. This one is worth double-checking by eye, because a follower count that's wrong by 30x is the error a client spots in three seconds.
  3. Rates — engagement rate, CTR, CPC, CPM, CPA, ROAS. Never sum them. Also never average them, which is the trap, because averaging looks reasonable. Four platforms' engagement rates averaged gives you a rate that belongs to none of them and weights a channel with 400 followers the same as one with 40,000. Recompute the rate from the combined totals instead: total engagements over total reach, total spend over total clicks.
RESTATES THE CHART

Engagement rate: (4.1% + 0.9% + 6.2%) ÷ 3 = 3.7%

EXPLAINS IT

Engagement rate: 18,400 engagements ÷ 611,000 reach = 3.0%

One quirk worth knowing before you start adding columns: plenty of exports never ship an engagements total at all. They give you likes, comments, shares and saves as separate columns and leave the addition to you. So "this platform has no engagement data" often means "this platform has four columns you need to add first" — and if you add them for one platform and take a ready-made total for another, make sure the ready-made one counts the same four things.

When one platform hands you two files

This happens more than you'd expect, and it's where an otherwise careful report goes wrong. One platform, one month, two exports — and whether you add them or take the larger of the two depends entirely on what the two files are.

LinkedIn is the classic case: an "All posts" export and a "Metrics" export, both covering the same month, both carrying an impressions column. Those are two views of the same underlying number. Adding them doubles the client's impressions. You want the larger figure, not the sum.

Now the opposite: two YouTube Studio exports for two different videos over the identical date range. Those are genuinely separate view counts. Taking the larger one throws away an entire video's performance. Same shape of problem, same two files with the same columns over the same dates — and the correct answer flips.

There is no rule that gets both right, which means there's no safe default. When you hit two files for one platform, the question to ask is whether they describe the same activity or different activity. Same activity, take the max. Different activity, add them.

Per-platform rows, then one set of totals

Structure the finished report in two layers. Up top, one set of headline numbers for the month — total reach, total engagements, total followers, the blended rate. Below that, a table with one row per platform showing the same metrics broken out. The client reads the top and stops, which is fine, and the ones who want to know which channel did the work scroll down and find it without doing arithmetic.

Keep it to exactly one row per platform per month. Two rows for the same platform is how a multi-month export sneaks back in after you thought you'd filtered it, and once there are two rows nothing downstream can tell that they overlap — the totals just quietly read high.

The other thing worth doing while the files are open: write down which platform each headline number came from. Not for the client — for you, next month, when the number moves 40% and you need to know whether the channel changed or your method did.

Doing it without the spreadsheet

All of the above is what Poststeady does with the exports you already download, because these were the rules that had to be written down to build it. You upload the CSVs, map the columns once per client, and it applies the same three-bucket logic: counts sum, followers take the period's peak rather than the sum, and every rate is recomputed from the period totals instead of being read from the file or averaged across platforms.

The two-files case is the one it deliberately doesn't guess at. When two uploads for the same platform both carry the same metric, it asks whether to add them or take the larger, rather than picking a default that would be right for LinkedIn and wrong for YouTube. Rows that fall outside the reporting month get excluded and reported back to you as a count, so an "all posts" file doesn't silently pull a quarter into a monthly report.

What comes out is a branded three-page report with the per-platform table under the headline numbers, and a written summary you edit line by line. Every figure traces back to a row in a file you uploaded — which matters most on the month a client asks where a number came from.

Put all four exports in one report

Upload the CSVs you already download and get one branded report, with the totals worked out and the summary written for you to edit.

Start free
Aditya Singh
ABOUT THE AUTHOR
Aditya Singh Founder, Poststeady

Aditya Singh is the founder of Poststeady, a CSV-first reporting tool for freelance social media managers. He writes about turning raw analytics exports into reports clients read in one pass.