Free Social Media Report Generator

Turn a CSV of post or campaign metrics into totals, CTR, ROAS and a downloadable PDF report.

Loading the editor…

How to use this tool

Client and team reports usually start as a spreadsheet of posts or campaigns. This generator reads that sheet as a CSV, adds up impressions, reach, clicks, engagements, spend and revenue, and works out click-through rate and return on ad spend. You get a summary to copy, a bar chart of engagements by row and a plain PDF to share.

  1. 01

    Prepare a CSV

    Keep a name column plus impressions, reach, clicks, engagements, spend and revenue, with one row per post or campaign. Click Choose files to add it, or skip the file and type totals into the metric fields.

  2. 02

    Add a brand name and notes

    Fill in Brand or show name, which becomes the PDF title. Use Report notes and date range for the period and goal, such as “March 1–31, spring launch.”

  3. 03

    Create and download

    Click Create result to see totals, CTR, ROAS and the engagements chart. Copy the summary, or use Download TXT or Download PDF to save it.

CSV format the report generator accepts

The first row must contain column names, and a name column is required. Headers aren’t case-sensitive. • name: the post or campaign label • impressions, reach, clicks, engagements: whole counts • spend, revenue: amounts in one currency, without symbols • Missing metric columns count as 0 • Thousands separators such as 10,000 work inside quoted cells • Up to 5,000 rows and 10 MB per file

How CTR and ROAS are calculated

CTR = clicks ÷ impressions × 100. ROAS = revenue ÷ spend. With the example data, 500 ÷ 18,000 × 100 = 2.78% and 3,000 ÷ 800 = 3.75, so revenue was 3.75 times spend. If impressions or spend are 0, the report shows a dash instead of a rate.

What’s in the PDF

The PDF is a plain A4 document built for quick sharing: • Your brand name as the title, followed by your notes • Totals for every metric, plus CTR and ROAS • One line per row with impressions, clicks and engagements The engagements bar chart appears on the page only, and the PDF has no logo or color theme. For a designed client deck, copy the summary into your own slide template.

Read summed reach with care

Reach is added up row by row, so someone reached by two campaigns counts twice. Treat the total as an upper bound, and use your ad platform’s deduplicated reach when you need the number of unique people.

Frequently asked questions

What is a social media report generator?

A social media report generator turns raw performance numbers into a summary you can share with a client, manager or team. This one works from a CSV or numbers you type, then adds up the metrics, calculates CTR and ROAS and creates a PDF. It doesn’t connect to your social accounts, so the data comes from exports you already have.

How do I create a social media report from a CSV?

1. Export post or campaign metrics from your analytics or ad tool and rename the headers to match the required columns. 2. Click Choose files and select the CSV. 3. Enter a brand name and notes about the date range. 4. Click Create result, check the totals and click Download PDF.

Which columns does the CSV need?

Only name is required. The tool also reads impressions, reach, clicks, engagements, spend and revenue, and any missing metric column counts as 0. Other columns, such as date or platform, are ignored, so you can leave them in the file.

Can I make a report without a CSV?

Yes. Leave the file empty and type totals into Impressions, Reach, Clicks, Engagements, Spend and Revenue, and the report treats them as one row named after your brand. When a CSV is added, those metric fields are hidden and the file is used instead.

Why does it say my CSV is invalid?

The file needs a header row with a name column, at least one data row and no more than 5,000 rows. Every metric must be a number of 0 or more, so remove currency symbols, percent signs and text such as “N/A.” Files with broken quoting or rows of uneven length also fail.

Does the report include engagement rate?

No. The summary covers totals, CTR and ROAS only. To get engagement rate, divide total engagements by reach or impressions, depending on the definition your team uses; with the example data, 1,050 engagements ÷ 18,000 impressions is about 5.83%.

Can I add a logo or charts to the PDF?

Not in this tool. The PDF contains text only: the title, your notes, totals, rates and one line per row. The engagements chart is shown on the page, so take a screenshot of it or rebuild it in your slide software if you need a visual.

How many campaigns can one report include?

A single CSV can hold up to 5,000 rows and must be 10 MB or smaller. Every row appears in the PDF, while the on-page chart shows the first 20 rows. For long lists, group posts by week or campaign first so the report stays readable.

Is my data uploaded?

No. The CSV is read and the totals are calculated in your browser, and the PDF is created on your device. To draw text in the PDF, the page downloads the open-source Noto Sans SC font from the jsDelivr CDN; that request doesn’t include your figures.

Is the social media report generator free?

Yes. It’s free to use with no signup or account, and you can create as many reports as you need. Each report is built from the file or numbers you provide at the time, and nothing is saved after you close the page.

For developers

Add public social data to your reports

SocQ APIs fetch public posts and profiles from Instagram, TikTok, YouTube and LinkedIn, including public engagement counts such as likes and comments. Ad spend, revenue and private reach still come from your own analytics exports.

View all tools