The social media ROI formula
Social media ROI = (value generated by social - cost of social) / cost of social, expressed as a percentage. Value generated includes revenue, and can include the value of a lead or signup if you already have a reliable value assigned to those. Cost includes content production, management time, and any paid promotion, not just ad spend. Some teams express the result as a ratio instead of a percentage, for example 1.5x rather than 150%. The maths is identical. Only the label changes.
The formula itself is simple. What's hard is the numerator: knowing how much revenue social actually generated in the first place. Most of the difficulty in measuring social ROI is a tracking problem wearing a maths problem's clothes. It looks like arithmetic. It is actually a data-collection job.
Why social media ROI is harder to prove than paid search ROI
Search ads carry intent inside the click itself; someone typed the thing they wanted and clicked an ad for it. Social is different. Most social touches happen earlier in the decision, while someone is scrolling and not actively shopping. That means the platform's own analytics, which mostly report engagement such as likes, comments, shares, and saves, stop at the edge of the platform and rarely show what happened after someone left it.
What native platform analytics actually give you
| Platform | What its analytics show | What it doesn't show |
|---|---|---|
| Instagram (professional account) | Reach, saves, profile visits, and link taps on the bio link | Where that tap went next, or whether it converted |
| TikTok | Video views, average watch time, profile views | Off-platform conversion, unless a pixel is separately wired up |
| Facebook Page | Post reach, reactions, Page CTA clicks | Revenue attribution beyond Meta's own ad-tracked conversions |
| YouTube | Watch time and click-through to description links via YouTube Analytics | What happens after the click lands somewhere else |
Every one of these stops at the click. None of them can see what a visitor does on a website they don't operate. That's a hard boundary for any social platform, and for any tool sitting on top of it, not a gap specific to one app.
Step 1: define what "cost" includes
Ad spend is the obvious cost, but it usually isn't the biggest one. Content production, editing, and the hours someone spends managing the account belong on the same side of the ledger. Leave them out and the ROI figure only reflects paid social, which is a different, narrower question than "is social working."
Where influencer and UGC costs fit
Paying a creator for a post, or paying to license user-generated content, is a cost of social the same way ad spend is, even though it rarely shows up in an ads dashboard. Add it to the cost side of the formula for the period it ran, and tag whatever link the creator posted the same way you'd tag your own, so its performance gets measured the same way rather than judged on follower count or engagement alone.
Step 2: tag every outbound link
Every link you post, in a caption, a Story, or a bio, needs a consistent UTM so a sale downstream can be traced to the post that sent it. Raydar's UTM builder generates these consistently so the campaign, source, and post variant survive all the way to checkout. See what are UTM parameters if you need the mechanics first.
Step 3: route profile clicks through one metering point
Most platforms only give you one clickable link in a profile, which forces every offer and promotion through the same door. Point that door at a link in bio that logs every click by source and destination, rather than a flat redirect, and the same page tells you which of ten posts a click actually came from. Raydar records first-touch and last-touch on every click that passes through it; Instagram itself does not.
Step 4: choose first-touch or multi-touch, not last-click
Because social touches tend to sit earlier in the journey, last-click attribution will systematically starve social of credit and give it to whatever channel happened to close the sale. First-touch vs last-touch attribution covers the mechanics; for social specifically, first-touch or a multi-touch model is usually the more honest read of what actually drove the sale.
Step 5: separate organic ROI from paid ROI
Organic and paid social often share a landing page and even a UTM campaign name, which makes it tempting to report them as one number. Don't. Organic cost is mostly time, paid cost is mostly media spend, and the two behave completely differently as you scale. Blending them hides which one is actually earning its keep.
Step 6: calculate and interpret the number
Run the formula per platform, per period, using the cost and revenue figures you've now tagged and separated. A single ROI number for "social" as a whole is a starting point, not the finish line; the useful version breaks it down by platform and by organic versus paid, because those numbers rarely move together.
A worked example
Say an account spends 10 hours a week on organic content, and that time is valued at $40 an hour, with no paid boosts that month. Cost = 40 hours x $40 = $1,600. Tagged links from that month's posts drove 18 sales worth $3,200 in total revenue. Social media ROI = ($3,200 - $1,600) / $1,600 = 1, or 100%. Every dollar spent on social returned a dollar of profit on top of itself. Run the same calculation the following month with a different cost and revenue figure, and the trend across months tells you more than any single month's number does on its own.
Assigning a value to leads and signups, not just sales
If social sends signups or leads rather than direct purchases, don't leave the value side of the formula blank. Multiply the number of tagged leads by your existing close rate and average deal value, the same approach used for ROAS on lead generation campaigns, so a lead-driven channel can be compared against a sales-driven one using the same formula rather than two different scoreboards.
Common mistakes when measuring social media ROI
- Reporting reach or impressions as if they were ROI. They measure exposure, not revenue, and the two move independently of each other.
- Counting only paid spend as the cost, which overstates ROI for accounts that lean heavily on unpaid content and staff time.
- Crediting the last platform someone touched before buying, when social usually did its work earlier in the journey.
- Comparing ROI across platforms with wildly different content costs, like a heavily produced video against a single photo, as though the investment were the same.
Comparing social ROI to other channels
Once social ROI is calculated cleanly, it's tempting to rank channels against each other and defund whichever one comes last. Be careful with that: social often plays an assist role that a last-click or single-channel view understates, and a channel with a lower ROI on its own attribution can still be the reason a higher-ROI channel converts at all. The more reliable comparison is the trend over time within a channel, rather than a single point-in-time ranking across channels measured on inconsistent attribution rules.
How often to recalculate it
Monthly is usually the right cadence for social ROI, since organic content compounds slowly and a single viral post can distort a weekly number in either direction. Paid social campaigns can be checked weekly if spend is meaningful, but organic performance needs a longer window before a trend is trustworthy rather than noise from one unusually good or bad week.
How to prove social media works, without inventing numbers
The version of this that survives scrutiny is built from a real link, a real click count, and a real conversion tied together with UTMs, not one that leans on platform vanity metrics. Showing a leadership team "this post sent 340 tagged clicks, 12 converted, here's the revenue" holds up in a way that "it got 40,000 views" never will.