A social media report should show a client what changed, what the source actually measured and what the agency will do next. A page of screenshots or one blended engagement score cannot provide that evidence.
This guide gives you a reusable structure and a worked two-channel example. Every figure is fictional and demonstrates the reporting method, not a client result or benchmark.
What is a social media report?
A social media report is a structured account of performance over a defined period. It connects the client's goal to platform-level and post-level evidence, labels how each metric was calculated, separates organic from paid activity, states attribution limits, and assigns the next actions that follow from the findings.
Keep the source record separate from the commentary. The evidence should not change when the interpretation changes. If a number is unavailable, say so rather than turning a missing value into zero or a confident explanation.
What should a social media report include?
Include the client's goal, reporting period, source status, executive summary, one section per channel, post-level examples, a separate paid-media view, website outcomes and next actions. Every metric needs a platform, account or campaign, definition and comparison basis. Add a limitation whenever the number cannot support a causal conclusion.
Use this social media report template as the reporting contract:
| Section | What to record | Required context | Question it should answer |
|---|---|---|---|
| Report identity | Client, report version, period and comparison period | Timezone, prepared date and owner | Which exact report are we reviewing? |
| Client goal | One current communication or business objective | Approved source and measurement plan | What decision should this report support? |
| Source status | Connected, delayed, unavailable or partial for each source | Retrieval time and affected dates | Can the figures be trusted for this period? |
| Executive summary | Two or three material changes | Observation, limit and next action | What needs the client's attention? |
| Channel detail | Native measures for each platform | Account, organic or paid scope and field names | What changed within this channel? |
| Content evidence | A small set of posts that explain the movement | Post ID, format, publish date and source | Which creative examples deserve inspection? |
| Website outcomes | Tagged sessions and agreed key events | Analytics property, channel rule and attribution model | What happened after people left the platform? |
| Delivery and action | Work completed, open question and next test | Owner and due date | What will happen before the next report? |
This structure keeps a metric close to its definition. “Engagement rose” is incomplete. State which actions formed the numerator, which exposure measure formed the denominator, and whether the data includes promoted activity.
Do not turn agency activity into proof of performance. Publishing twelve posts is a delivery record. It does not show that those posts caused an increase in enquiries.
Use the agency KPI reporting guide when the client still needs to decide which measures belong in the recurring report. This article focuses on the source and comparison rules after that selection.
Match the field to the client question
Choose a small group of fields that answers the current goal. YouTube's Analytics reference, for example, defines views, engaged views, average view duration, comments, likes, shares and subscriber changes separately. Keep that specificity in a cross-channel summary.
| Client question | Useful source fields | Keep explicit |
|---|---|---|
| Did distribution change? | Instagram views or reached accounts; LinkedIn impressions or unique impressions; YouTube views or engaged views | Each platform's current definition, account and organic or paid scope |
| Did people act on the content? | Defined interactions, LinkedIn clicks, YouTube likes, comments or shares | The exact actions included and whether repeat actions are possible |
| Did video hold attention? | YouTube average view duration or an available platform watch-time field | Seconds or percentage, eligible media types and data delay |
| Did people visit the website? | Platform link clicks plus tagged analytics sessions | Click and session are different events, so do not expect the totals to match |
| Did an important website action occur? | Configured analytics key events and approved CRM records | Channel rule, attribution model and missing-source rate |
Fields change. Meta's Instagram Media Insights documentation marks media impressions as deprecated for content created after 2 July 2024. Store the field name and retrieval date, and never silently substitute a similar metric.
How do you compare social channels without mixing definitions?
Compare trends within each platform first, using the same field, scope and period. Only compare channels when the measures genuinely answer the same question. Never add platform-specific reach figures and call the result unique people. Never average engagement rates that use different numerators, denominators or organic and paid boundaries.
Write the engagement formula beside the result
“Engagement rate” can describe several calculations. The percentage is not portable unless the formula is visible.
| Label in the report | Formula | What changes the interpretation |
|---|---|---|
| Content actions per impression | Defined clicks, reactions, comments and shares divided by impressions | Repeat impressions can appear in the denominator |
| Interactions per reached account | Defined interactions divided by accounts reached | The reach definition belongs to that platform and period |
| Video interactions per view | Defined interactions divided by video views | A view may not represent a unique person or a complete watch |
| Click-through rate | Link clicks divided by impressions | The click field and paid or organic scope must match |
Pick one formula for the question being answered. Keep it stable across periods. If the client wants a different denominator, show the new rate as a separate measure rather than silently rewriting the history.
Keep organic and paid rows separate
A promoted post can appear in both content and advertising workflows. That does not make every platform field a combined total.
Record whether the source is an organic content endpoint, an ads reporting endpoint or an explicitly combined metric. Instagram's current documentation says fields such as comments, likes, views and total_interactions are organic-only, while specific total_* fields can include promoted or ad activity. LinkedIn's organisation-share endpoint is also organic-only and directs sponsored reporting to Ad Analytics.
Do not invent cross-platform reach
Suppose Instagram reports 12,600 reached accounts and LinkedIn reports 9,100 unique impressions. Adding them produces 21,700 platform observations, not 21,700 deduplicated people.
The same person may appear on both platforms, and the platforms do not expose one shared identity set in this report. Show the two native figures separately. Set deduplicated cross-platform reach to “not available” unless a suitable measurement method genuinely provides it.
What does a social media report example look like?
A useful social media report example begins with the reporting conditions, then shows channel evidence before the commentary. The fictional example below covers an agency reporting for a UK leadership-training company. Its figures, posts and decisions are invented so you can inspect the method without treating them as proof.
1. Fix the report context
| Field | Fictional entry |
|---|---|
| Goal | Generate qualified employer interest in team training while building recognition among HR leads |
| Period | 1-31 July 2026 compared with 1-30 June 2026 |
| Channels | Instagram professional account and LinkedIn organisation page |
| Paid scope | Meta and LinkedIn campaign results shown separately from organic content |
| Website scope | Tagged social sessions and configured key events in GA4 |
| Source status | All requested fields loaded; Instagram data retrieved after the platform delay window |
| Known gap | Four of nine fictional CRM enquiries have no captured source |
2. Show organic results by platform
| Platform and metric | July | June | Change | Definition used in this report |
|---|---|---|---|---|
| Instagram views | 18,400 | 16,000 | +15.0% | Native organic content views returned for included media |
| Instagram accounts reached | 12,600 | 11,900 | +5.9% | Native reach field for the account and period |
| Instagram total interactions | 720 | 640 | +12.5% | Native organic interactions for included media |
| Instagram interactions per view | 3.91% | 4.00% | -0.09 percentage points | Total interactions divided by views |
| Instagram profile visits | 410 | 390 | +5.1% | Native profile visits for the stated scope |
| LinkedIn impressions | 14,800 | 12,500 | +18.4% | Organic organisation-share impressions |
| LinkedIn unique impressions | 9,100 | 8,200 | +11.0% | Organic unique-impression field |
| LinkedIn clicks | 380 | 300 | +26.7% | Organic organisation-share clicks |
| LinkedIn reactions | 270 | 240 | +12.5% | Organic reactions in the source record |
| LinkedIn comments | 42 | 36 | +16.7% | Current social-action count for included shares |
| LinkedIn shares | 31 | 25 | +24.0% | Organic organisation-share count |
| LinkedIn defined action rate | 4.89% | 4.81% | +0.08 percentage points | Clicks, reactions, comments and shares divided by impressions |
The rates are not compared because Instagram uses total interactions divided by views, while LinkedIn uses defined actions divided by impressions. The report also keeps each platform's reach measure separate.
3. Separate paid performance
| Paid source | Impressions | Link clicks | Spend | CTR | Cost per click |
|---|---|---|---|---|---|
| Meta Ads campaign | 24,000 | 310 | £620 | 1.29% | £2.00 |
| LinkedIn Ads campaign | 16,000 | 160 | £800 | 1.00% | £5.00 |
These campaigns serve different audiences, so the lower cost is not automatically better. Meta's Ads Insights API and LinkedIn Ads Reporting require the paid entity, fields and time context.
4. Use post-level evidence
| Content example | Result | Limitation | Next action |
|---|---|---|---|
| Instagram Reel: “Three briefing errors” | 7,200 organic views and 310 interactions | Views are not unique people or completed watches | Test the same problem with a more specific employer-facing opening |
| LinkedIn document: “Brief approval checklist” | 4,800 impressions and 164 clicks | Organic clicks do not show whether the visitor became an enquiry | Keep the checklist format and tag the destination link consistently |
| LinkedIn founder post: “The approval delay nobody owns” | 2,300 impressions, 61 clicks and 18 comments | Comments include several agency peers outside the target client group | Review comment quality before using it as audience-fit evidence |
5. Connect website outcomes without claiming causation
| Website or CRM measure | July | June | Boundary |
|---|---|---|---|
| Tagged Instagram sessions | 320 | 285 | Based on the analytics channel rule and available campaign tags |
| Tagged LinkedIn sessions | 260 | 220 | Same analytics property, separately filtered |
| Social-attributed key events | 26 | 21 | Credit follows the configured attribution model |
| Confirmed employer enquiries | 9 | 7 | CRM total; only five July records contain a captured source |
Four of nine fictional enquiries lack a source, preventing a channel-level claim. Google Analytics attribution assigns credit under the selected model, so name that model and the data-quality gap. Do not rename all nine “social media enquiries.”
How should an agency explain results and limitations?
Write commentary in four parts: observation, interpretation, limitation and action. Start with what the source recorded. Offer a bounded interpretation, state what the data cannot establish, then name the next check or test. This produces useful judgment without turning a correlation into a confident causal story.
For the worked example:
- Observation: Instagram views rose 15.0%, while interactions per view moved from 4.00% to 3.91%.
- Interpretation: distribution grew faster than the defined interaction count.
- Limitation: views are not unique people, and this comparison does not isolate creative, timing or audience effects.
- Action: inspect the posts that contributed most views, then test one specific opening while keeping the source and rate formula unchanged.
The executive summary could say: “Instagram organic views increased by 15.0%. Interactions also increased, but more slowly, so interactions per view fell by 0.09 percentage points. We will test a clearer employer-facing opening on the next two Reels. This is a content test, not evidence that the existing opening caused the change.”
Keep bad news visible. If the source is delayed, partial or unavailable, lead with that state. The client needs to know whether a zero represents measured activity or a failed retrieval.
Can social media reporting be automated safely?
An agency can automate collection, validation, calculations and repeated formatting while keeping definitions and conclusions controlled. Source systems should provide the figures, deterministic rules should calculate rates, and a named reviewer should approve the commentary. Failed or empty responses must remain visible rather than becoming invented values.
Meta says unavailable Instagram insights return an empty data set rather than zero and can be delayed by up to 48 hours. Those states must remain distinct.
A safe workflow should:
- retrieve each account and campaign with an authorised credential;
- store the field, entity, period, timezone and organic or paid scope;
- validate required fields and calculate rates from versioned formulas;
- flag unavailable sources and keep raw observations separate from commentary;
- require a named reviewer before client delivery.
Automation should preserve the evidence trail. A model may draft an explanation from validated observations, but it should not choose a missing value, redefine engagement or attribute a sale.
The automated client reporting guide covers the wider collection architecture and review gates. The template here supplies the social-specific field contract that workflow needs.
If your agency rebuilds social reports by hand each month, book a free workflow mapping call. We can map the sources, definitions, exceptions and review points before deciding what should be automated.








