In short
It depends on what is actually being bought, which varies far more than the price does. The main drivers are catalogue size, how much technical debt sits in the current build, how much content has to be written, whether the provider implements the changes or only recommends them, and how contested the category is. The way to compare quotes is not by monthly fee but by scope per dollar and by the revenue sitting behind the terms in reach, which you can estimate from your own analytics before speaking to anyone.
The number varies because the work varies, not because pricing is opaque
Two quotes for the same store can be far apart and both be reasonable, because they describe different jobs. One might cover a technical audit and a monthly report. Another might cover the audit, the developer time to fix what it finds, category page copy for the top fifty collections, feed and structured data work and monthly analysis.
The second is a bigger number and a smaller risk, because recommendations that nobody implements produce nothing. This is the single largest source of confusion in SEO pricing: whether the fee includes the hands that do the work or only the plan for it.
So start by writing down what you need done rather than asking what SEO costs. A store with a clean build and forty categories needs a different engagement from a store mid-migration with two hundred thousand URLs and a Merchant Center feed pulling from the same product data.
The honest answer to the pricing question is that it is a labour cost. Estimate the hours of specialist and developer time the scope requires, apply a rate appropriate to the market, and the range you are quoted will start to make sense.
What moves the cost up or down
Catalogue size is the first factor, because everything scales with the number of pages: templates to fix, attributes to clean, redirects to map, content to produce. A store with three hundred products and one with three hundred thousand are not doing the same job even when the tactic list looks similar.
Technical debt is the second. A theme with a decade of app residue, a headless front end with rendering problems, or a platform migration handled without redirects all add engineering time before any content work begins.
Content volume is the third and often the largest. Category introductions, buying guidance, product description rewrites and comparison pages are writing work, and writing is priced by output. A store that can supply its own copy pays much less than one that outsources all of it.
After those come competitiveness, which affects how much depth and authority-building the plan needs; the number of markets and languages, since each one multiplies the templates and the checking; and how much capacity exists internally. A store with a developer who can implement changes quickly gets more out of the same fee than one where every change waits in a queue.
The pricing models you will see, and what each suits
Monthly retainers are the most common, and they suit ongoing programs where the work continues indefinitely: content production, technical maintenance, monitoring and iteration. The thing to check in a retainer is what happens to unused hours and how scope is agreed each month, because a retainer without a defined deliverable drifts toward reporting.
Fixed-scope projects suit bounded work with a clear finish: a technical audit, a migration plan, a structured data implementation, a set of category pages. They price well because both sides can see the edges, and they are a sensible way to start a relationship before committing to a longer program.
Hourly or day rates suit stores with in-house capability that need specialist input rather than delivery. They work when you know what you want done.
Performance-linked pricing exists and is worth thinking about carefully. Organic revenue is influenced by pricing, stock, seasonality, paid media and site changes nobody in the SEO program controls, so the attribution question is hard and the incentives can pull toward short-term tactics. Where it works, it is usually a smaller base fee with a bonus tied to a metric both sides agree is fair and can measure the same way.
Judging a quote against the revenue at stake
Do this arithmetic before you take a call. Take the categories that matter, look up the search demand for their main terms, and estimate the sessions available if you moved from where you rank to the first few results. Multiply those sessions by your own revenue per session, which your analytics already knows. That gives a rough annual figure for what the improvement would be worth.
Compare that to the annual cost of the program. If the revenue at stake is a small multiple of the fee, the case is thin and the money may do more in another channel. If it is a large multiple, the question becomes whether this provider can actually deliver the scope, which is a different conversation.
Be conservative with the estimate. Assume you capture a fraction of the available clicks, that some terms will not move, and that the timeline runs across quarters rather than weeks. A case that only works with optimistic assumptions is not a case.
Then ask the questions that separate providers: who implements, how changes reach the live site, what happens in the first ninety days, what the reporting shows beyond rankings, and what you keep if the engagement ends. The answers tell you more about the value of the fee than the fee does.
Estimating the revenue at stake before comparing quotes
- Sessions available on target terms, monthly
- 6,000
- Share you assume you can capture
- One quarter
- Added sessions per month
- 1,500
- Your revenue per session
- 2.40
- Added revenue per month
- 3,600
- Annualised, once ranked
- 43,200
Illustrative figures. Replace every row with your own: revenue per session comes from your analytics, and the capture share should be deliberately conservative because ranking movement is never certain.
Related questions
Is hiring in-house cheaper than using an agency?
It can be at scale, once the volume of work justifies a full-time salary and the person has developers and writers around them. Below that, a single hire tends to spend their time on whichever discipline they know best while the others go undone. Many stores end up with both: someone internal who owns the roadmap and outside specialists for depth.
Should SEO be paid based on results?
Only where both sides can agree on a metric that is measured the same way and is genuinely influenced by the work. Organic revenue moves with stock levels, pricing, seasonality and paid activity, so a pure revenue share creates arguments. A base fee with a bonus on an agreed measure is the more workable version of the idea.
How long before the spend shows a return?
Expect the first measurable movement within weeks on technical fixes and three to six months on category and content work, with revenue trailing rankings. Budget for at least two quarters before judging the program, and use crawl, indexing and impression trends in the meantime so the decision is not made on faith alone.