SEO pricing is opaque for a structural reason: the work required varies more between two similar-looking businesses than almost any other marketing service. A 900-page site built by four different agencies over six years can need more work than a 40,000-SKU catalog on six clean templates.
That does not excuse vagueness. Here is what the market actually charges, what each pricing model does to incentives, and how to judge whether a number is serious.
The rough ranges
For agencies working with established businesses in competitive markets:
| Engagement type | Typical range | What it usually buys |
|---|---|---|
| One-off technical audit | $1,500 – $8,000 | Diagnosis and a fix list, no implementation |
| Small monthly retainer | $1,500 – $3,500 | One track at a time, limited hours |
| Mid monthly retainer | $4,000 – $8,000 | Technical, on-page and content running together |
| Large monthly retainer | $9,000 – $20,000+ | Multi-track delivery with direct implementation |
| Hourly consulting | $150 – $400/hr | Advisory, no delivery |
Below roughly $1,500 a month the arithmetic stops working. At agency rates that is a handful of hours, which buys either a small amount of senior attention or a large amount of junior attention. Most of the market solves this by resourcing it juniors-first and reporting activity rather than outcomes.
Our own pricing sits in the middle of these ranges, and the reasoning behind each tier is published rather than quoted on request.
The pricing models, and what each one rewards
Flat monthly retainer
You pay a fixed amount for a scoped set of work. The incentive is to be efficient, since faster delivery does not reduce the fee. The risk is scope creep in the client’s favour or scope shrinkage in the agency’s, which is why the scope has to be written down.
This is the model we use, and the main argument for it is that the incentive is legible to both sides.
Percentage of ad spend
Common at full-service agencies. The fee is tied to your media budget, which has no relationship to the work organic search requires. If you cut paid spend, your SEO fee falls even though the SEO work did not change.
Traffic or ranking based
Superficially attractive: you pay for results. In practice it rewards the cheapest route to the metric, which is high-volume informational content that ranks easily and converts nothing, or rank tracking on terms chosen because they were already winnable.
If a performance model is used at all, it should be tied to revenue from non-brand organic, not sessions and not positions.
Hourly
Honest for advisory work and poor for delivery. It makes the client pay for the agency’s learning curve, and it turns every clarifying question into a cost decision, which is exactly the conversation you do not want to discourage.
Project or sprint
Good for bounded work with a definite end — a migration, an audit, a template rebuild. Poor as the whole relationship, because the compounding parts of SEO do not fit inside a fixed scope.
What actually moves a quote
Two businesses with identical revenue can sit two tiers apart. The factors that decide it, roughly in order:
Template count, not page count. Templates are the unit of work. Six templates covering 40,000 URLs is less work than forty bespoke sections covering 900.
CMS friction. If titles, canonicals and schema are editable at template level, work ships in a sprint. If every change is a developer ticket on a quarterly release train, the same work costs more to land and takes longer to show.
Catalog complexity. Faceted navigation, variant duplication and merchant-feed alignment are the most labour-intensive technical work in ecommerce SEO. A catalog with all three is a large engagement regardless of revenue.
Number of locations. Each address needs its own page, its own Business Profile pass and its own tracking. This scales close to linearly.
Competitive difficulty. Where the top ten results are all funded competitors and established publishers, the investment required to reach page one is materially higher. This is knowable before you spend anything.
Whether you have developers. If your team can merge a spec, the agency spends its hours on diagnosis and direction rather than implementation, and the quote comes down.
How to read a quote
Ask what happens in month one. A serious answer is specific: crawl, log review, field Core Web Vitals, a prioritised fix list. A vague answer — “onboarding and strategy” — usually means the first invoice buys a kickoff call and a spreadsheet.
Ask who does the work. Not who is on the call. The gap between the senior who sells and the junior who delivers is the single largest quality variable in this industry.
Ask whether they implement or recommend. A recommendation that sits in a backlog for two quarters earns nothing. If the answer is “we hand it to your developers”, ask what a handover document looks like and whether it is precise enough to merge without a follow-up meeting.
Ask what is excluded. Paid media, web development beyond SEO fixes, brand and creative, general PR. Getting this listed up front is cheaper than discovering it in month three.
Ask what you keep if you leave. Audits, briefs, tracking configuration, dashboards, link logs. If any of it lives in a reseller account you cannot access, that is a red flag about the whole arrangement.
Be suspicious of a fixed price quoted before anyone crawled the site. It is not confidence, it is padding — priced to protect the agency against what it has not yet looked at.
The two questions that matter more than the price
What would have to be true for this to pay for itself? Addressable search demand, a plausible share of it, your close rate, your average order value. If nobody can build that model, nobody knows whether the retainer is a good idea.
What is the exit? A 90-day committed term is defensible, because technical work needs that long to show measurable effect. A twelve-month lock-in with a cancellation fee is a commercial decision dressed as a delivery requirement.
We publish our tiers, what moves a quote up or down, and what is excluded on the SEO pricing page. The forecast that decides which tier fits comes out of a technical audit that is free — send us your domain and you get it inside five business days.
No agency can guarantee rankings or revenue; see our disclaimer for the full statement.