Calculating SEO ROI without fooling yourself
You need to know whether the SEO work is returning more than it costs.
Short answer
Return minus cost, over cost. The formula is trivial and every term is contested: teams undercount time, ignore opportunity cost, count brand traffic they would have had anyway, and measure over a window too short for the asset to have paid back. Fix the inputs and the arithmetic takes a minute.
The costs people leave out
Your own hours at a real rate, which for a founder is the largest line and the one most often recorded as zero. Tools. Content production. Engineering time for technical work. And opportunity cost, because the quarter spent on SEO was not spent on the other channel.
The returns people overstate
Brand traffic that would have arrived regardless. Traffic that converts to activity rather than revenue. Assisted conversions counted at full value. Each is defensible in isolation and together they routinely double a reported return.
Payback period beats ratio
A ratio without a timescale is unreadable, because SEO costs land immediately and returns arrive over quarters. Payback period, the point at which cumulative return covers cumulative cost, is the number that tells you whether you can survive the wait.
The shape of the curve
Almost nothing for the first months, then compounding. This is genuinely different from paid, where the return starts immediately and stops immediately. Any comparison that measures both over eight weeks is guaranteed to favour paid and to be meaningless.
Measure per page or per cluster
A site-wide ROI hides that a few pages are enormously profitable and most produce nothing. Segmenting tells you what to do next; a single number tells you only whether to continue, which is a decision you have usually already made.
Decay is a real cost
Rankings do not hold themselves. Content ages, competitors publish, engines change. Some ongoing maintenance is a cost of keeping the return, and a model treating traffic as permanent overstates the asset.
State your assumptions on the page
Attribution model, whether brand is included, what a conversion is worth and how you got that number. An ROI figure without its assumptions is unfalsifiable, and unfalsifiable numbers are what make executives distrust the whole channel.
Questions
- What is a good SEO ROI?
- Unanswerable without your margins and your cost of capital. The useful comparison is against your other channels over the same horizon, using the same attribution rules.
- How long before SEO shows positive ROI?
- Frequently two to four quarters for a new site, because costs land first. If you cannot fund that gap, the timing is the problem rather than the channel.
- Should I count my own time?
- Yes, at a real rate. Founder time recorded as free is the single largest distortion in small-business SEO cases and it makes genuinely unprofitable work look free.
Measured, not asserted
The honest version of this on ihatepdf.cv: $0 spent on advertising, 100,542 users reached, and 181 dated commits over eight months. The money cost was zero and the time cost was substantial, including 93 of 160 pages that earned fewer than ten clicks and one head term that returned 45 after months of effort.
Free tool for this: Position Value Calculator. No account, nothing uploaded.
Where this goes deeper
Every number on this page comes from one complete dataset: one product taken from zero to 100K+ users on search alone, with nothing spent on advertising. The full argument is Chapter 34 of the book. Five chapters are free to read.