Skip to content
All resources
Meta Ads Facebook Ads Reporting Report examples Templates

Facebook Ads Report Example: Free Sample PDF

The DashOps Team November 5, 2026 7 min read

Here is a finished Facebook Ads report you can open right now: the sample report as a PDF, eight pages, no form and no signup, with every number made up for two fictional companies. The sample shows a layout and is not a DashOps export. When you want your own version, the blank Excel file has the same sections and fills from an Ads Manager export you paste in.

The PDF holds two complete reports, because a business that wants leads and a shop that wants sales need different numbers at the top.

PagesFictional companyAd accountMain result
1 to 4Contoso Studios, a design studio that sells workshopsact_DEMO_001Website leads
5 to 8Acme Apparel, an online clothing shopact_DEMO_002Purchases

Both cover October 2026 against September 2026, and every page carries a Demo data label. None of the figures is a benchmark, so copy the structure and ignore the numbers.

banner-2400x1260-httpsdashopsioresourcesfacebook-ads-report-example

Page by page: the lead report

Page 1 gives the answer in words, then the key numbers. The report opens with four plain sentences before any table. For example, the first one reads “Spend was 4,364.51 USD in October, up 14.3% from September.” A client who reads nothing else still knows what happened. Below that sits a grid of eleven numbers, each with its change from September. For a business that wants leads, read these four first:

NumberOctober, demoChange from September, in percent
Spend4364.51+14.3
Link clicks6608+14.1
Website leads243+13.6
Cost per website lead11.31-1.3

Read together, they say spend and leads rose at about the same pace, so each lead cost about the same. One small note under the grid is worth copying into your own report: “Reach is not added up. One person can appear in two rows, so adding rows counts them twice.”

Page 2 shows the trend and keeps results apart. Two charts show spend per day and website leads per day, so a reader can see when something changed. Under them is a table of results by type:

Result typeResultsSpend of those campaignsCost per result
Website leads2432747.4711.31
Link clicks2273970.260.43
Landing page views912646.780.71

The account ran campaigns with three different goals, so there are three lines and no grand total. Adding 243 leads to 2,273 clicks gives a number that means nothing.

Page 3 lists campaigns, then placements. The campaign table runs highest spend first, with Spend, Impressions, Link clicks, CTR, CPC, CPM, Result type, Results and Cost per result. Its Total row leaves Results empty for the reason above. The placement table has six rows, such as “Facebook: Feed” and “Instagram: Instagram Reels”, with website leads and cost per lead for each.

One sum on this page is easy to get wrong in your own report. Cost per lead counts only the spend of the lead campaigns: 2,747.47 / 243 = 11.31. Dividing all spend by leads gives 4,364.51 / 243 = 17.96, which charges the traffic campaigns to leads and makes every lead look dearer than it was.

Page 4 ends with what happens next. Four numbered steps, each naming something to do. The first reads: “Try moving some budget from Demo Workshop Leads to Demo Newsletter Leads, and check the cost per lead after two weeks.” Another says to check that the lead numbers match the sign-up list, because a report is only useful if the numbers in it agree with the client’s own records.

What changes in the shop report

Pages 5 to 8 keep the same order and change which numbers lead. Spend, Purchases, Purchase value, ROAS, Average order value and Cost per purchase come first. The campaign table swaps to the numbers a shop decides on:

Campaign, demoSpendPurchasesPurchase valueROASCost per purchase
Demo Autumn Sale3877.71996146.061.5839.17
Demo New Arrivals2263.83422330.351.0353.90
Demo Retargeting Cart1293.67693994.463.0918.75
Demo Gift Guide970.0913622.080.6474.62
Total8405.3022313092.951.5637.69

The Total row’s ROAS comes from the summed parts, 13,092.95 / 8,405.30 = 1.56, and is never an average of the column above it. This table is what the next step on page 8 rests on: “Try moving some budget from Demo Gift Guide to Demo Retargeting Cart, and check ROAS after two weeks.”

This report covers paid ads only. Organic posts, the ones you publish to a Page or a profile without paying to run them, are not in the sample. The blank Excel file cannot add them either, because it reads an Ads Manager export. If a client wants both, report organic posts separately, from their own source.

Build your own from the blank Excel file

The Excel file opens on a How to use tab. Its Monthly report tab has the same sections as the PDF, plus a What changed box, and its Demo monthly report tab holds the same numbers as pages 1 to 4, so you can check your layout against a finished one. Its campaign table keeps the columns from page 3 whatever you paste, so a shop reads ROAS and purchase value for the whole account under Key numbers, not per campaign. The file does not update by itself: your report is as current as your last paste.

  1. In Ads Manager, open the ad account and stay on the Campaigns tab. The file reads the Campaign name column from there, and an export from the Ads or Ad sets tab gets an instruction and no numbers.
  2. Pick whole months, such as last month and the month before. A range like Last 30 days cuts across two months, so neither is complete.
  3. Open Columns, then Customize columns, and tick Amount spent, Impressions, Reach, Link clicks, Results, Landing page views, Leads, Purchases and Purchases conversion value.
  4. Open Breakdown, then By time, and choose Day.
  5. Open Reports, choose Export table data, and pick CSV. Meta’s help page on exporting names the same menu.
  6. Open the CSV in Excel and copy everything, including the top row.
  7. Open the workbook. If Excel shows Protected View, click Enable Editing first, or it will not let you paste. On the Paste your export tab, select everything, press Delete, click cell A1 and paste.
  8. Open the Monthly report tab and read the line under the title. It says what is ready and what is missing.

Menu words in Ads Manager can change, so if one differs, look for the nearest match.

Do not skip step 4. A default export has no days in it: it is one block of dates. The key numbers then fill for that block with no month before to compare, and the charts stay empty. With one row per day, the tab can split the months and draw the charts.

A placement table needs one more choice: also pick Placement in Breakdown, if Ads Manager lets you keep Day at the same time. If it will not, keep Day. The placement table stays empty and the rest fills.

Then do the part no export can do. Company, Summary in words, What changed and Next steps are yellow boxes for you to type in, and page 4 of the PDF shows how specific the steps can be. Reach is yellow too: read it from Ads Manager’s own total for those dates and type it in. An export with no breakdown holds one row per campaign, so it gives you the figure only for a report on one campaign.

Still deciding what to report?

Read what a Meta Ads report should include. For the template in more detail, see the free Facebook Ads report template guide and the guide to building a Meta Ads report template in Excel.

Would you rather not paste exports at all? In DashOps, you can download a PDF report for the dates you choose.

Frequently asked questions

Did the numbers in this sample come from a real ad account?
No. Every number was made up for two fictional companies, so you can see what a finished report looks like and copy the structure into your own. The sample shows a layout and is not a DashOps export.
Can I use the numbers in this example as benchmarks?
No. Every number in the PDF is made up and none is a benchmark. Compare your own account with its own earlier periods and with the targets you set, because those are the numbers your decisions rest on.
Does the example include organic Facebook or Instagram posts?
No. It covers paid ads only. The blank Excel file reads an Ads Manager export, so it cannot add organic posts either. If someone wants organic results as well, report them separately from their own source.
Can I edit the PDF for my own client?
The PDF is a finished sample to read and copy from. To make your own, use the blank Excel file: paste an Ads Manager export into the Paste your export tab, and the Monthly report tab fills with your numbers.
Why does my Monthly report have numbers but no charts?
Your export is probably not broken down by day. In Ads Manager, open Breakdown, then By time, choose Day, and export again. The export gains no new column for it: in the by day export we read, from the Ads tab, Reporting starts and Reporting ends both held that day on each row, and that is how the file knows.

See it in your own dashboard

DashOps brings Meta Ads reporting, campaign management, and white-label client portals into one place. Pick the plan that fits how you run ads.

Keep reading

Get in touch

Tell us about your setup or ask a question and we usually get back to you within one business day. Running more than 20 ad accounts? We will tailor a custom plan for you.

DashOps
Product updates

Get more from every Meta Ad

New features, product news, and practical Meta Ads tips, straight to your inbox.

Subscribe to product updates

Join our newsletter for new features, tips, and the occasional Meta Ads playbook. We may also send you an invite to our community. No spam, unsubscribe anytime.

We use your email to send these updates, and we may also use it to send you an invite to our community. When you subscribe, we also report the sign-up to Meta, and to Google if your browser has a Google Analytics cookie, as our Privacy Policy explains.