Skip to main content

SEO Agency Pricing: Why Nobody Gives You a Straight Number

SEO agency pricing varies by an order of magnitude, and the most-quoted average doesn't survive a read of its own method. What actually drives the cost, and what to ask.

cpywrk 13 min read
  • seo
  • strategy
Cover image for SEO Agency Pricing: Why Nobody Gives You a Straight Number

There is no standard price for an SEO agency, and the range is not narrow. Comparable-sounding engagements are sold for a few hundred a month and for several thousand. Agencies get accused of vagueness here, mostly unfairly: “SEO agency” describes at least five different kinds of work sold under one label, and you cannot price a label.

So instead of a number, this article gives you what a number would not: what the money is actually buying, what makes it move, and the questions that turn a quote into something you can compare.

The Short Answer, and Why It Isn’t Evasive

Every article on this search promises to answer “what does SEO cost” and then produces a range so wide it cannot inform a decision. I’d argue the wide range is the honest part. What’s dishonest is presenting it as an answer.

Consider what two agencies quoting the same monthly fee might actually be selling: one senior strategist for four hours a month; or eight junior-written articles; or a technical audit and a remediation backlog; or a link-acquisition campaign; or a reporting dashboard with a quarterly call attached. Those are five different products with five different cost structures. The price is similar because the market has settled on similar-looking retainers, not because the work is similar.

Which is why I think the useful question isn’t what should this cost. It’s what am I being sold, and how would I know if I got it.

What Is Actually on the Invoice

Most SEO retainers are a bundle. Unbundling it is the single most clarifying thing you can do before signing, because each component has genuinely different economics, and because you may not need all of them.

Technical work. Crawlability, site speed, indexation, structured data, fixing what the platform broke. Usually front-loaded: a lot in the first two months, much less afterwards. If you are paying a flat retainer for technical work in month eleven, ask what is being done.

Content production. Briefs, drafts, editing, publishing. This is the component that scales with volume and it is usually the largest share of the bill. It is also the component most often subcontracted, which matters for reasons covered below.

Link acquisition and digital PR. The most variable line item in the industry, ranging from genuine earned coverage to buying placements. It is also the component with the widest quality spread and the least verifiable output.

Local and technical specialisms. Local listings, multi-location work, international or multi-language setups, migrations. Priced as projects more often than not, and reasonably so.

Strategy and reporting. Keyword and market research, the plan, the monthly deck, the call. Genuinely valuable and genuinely easy to inflate, because it is the one deliverable that always arrives on time regardless of whether anything else happened.

Tooling. Rank trackers, crawlers, keyword data. Some agencies pass this through, some absorb it, some bill it as a line item. Worth knowing which, because it is a real cost and it is not effort.

An agency that will not break its retainer into these components on request is telling you something. Not necessarily something bad. Small agencies genuinely do work in a blended way. But you should know which components you are actually funding.

A clean flat illustration of a single sealed package on the left transforming into six distinct labelled components arranged on the right, representing the six cost categories inside a typical SEO agency retainer and the value of asking an agency to break them apart before you sign.

The Five Things That Move the Price

Once the bundle is broken out, the spread stops looking mysterious. Five factors do most of the work.

1. How contested your market is. Competing for terms that mortgage brokers and insurers bid on is a different job from competing in a niche B2B category with forty relevant searches a month. Same activity, different amount of it required.

2. How much of the retainer is production. Advisory hours are expensive per unit and few. Production (articles, pages, listings) is cheaper per unit and consumes the budget by volume. A retainer heavy in production looks more generous and is more sensitive to quality control.

3. Who actually does the work. This is the one I’d push hardest on, because it is the largest hidden variable. The seniority mix behind a retainer varies enormously between agencies charging the same fee, and subcontracting is normal rather than exceptional. Neither is a scandal. Not knowing is the problem.

4. Whether content is included, and at what volume. The presence or absence of content in the bundle changes the price more than almost anything else, and it is the component most often described vaguely: “content support,” “content as needed.”

5. Contract length and notice period. Long minimum terms subsidise lower monthly rates. That can be a fair trade. It is a trade you should make knowingly, because SEO retainers are unusually hard to evaluate inside the first quarter, which is exactly the window a twelve-month minimum removes from you.

Retainer, Project, or Hourly: What Each One Hides

Three commercial models dominate, and each is opaque in its own particular way.

The monthly retainer is the default. What it hides is the unit. A retainer states a price and a general intention, and frequently states neither an hour count nor a deliverable count. Two retainers at the same price can differ by a factor of three in effort, and nothing in either document would reveal it.

Project pricing is clearer on scope and hides the tail. A migration or an audit has a defined end, which is honest. But SEO does not have a defined end, so project pricing tends to be followed by a retainer conversation, and it is worth having that conversation before the project rather than after.

Hourly billing is the most transparent unit and the least common, because it makes the seniority question unavoidable. That is also why it is worth asking for an hourly equivalent even from an agency that does not bill that way. “How many hours, at what mix?” divided into the retainer is a number you can actually compare.

I don’t think any of the three is the correct model. The retainer is the norm for defensible reasons. But every one of them can be quoted in a way that conceals effort, and the questions in section six exist to make effort visible regardless of which model you are handed.

Two people seated across a table in a naturally lit office or cafe, one reviewing a printed document and one mid-explanation, representing the ordinary difficulty of translating a quoted price into a clear understanding of the work it actually covers.

The Number Everyone Quotes, and Why It Doesn’t Survive a Page-Read

If you search this topic, you will meet one figure repeatedly: an average monthly agency retainer of a little over $3,200. It appears on pricing pages, in comparison posts, and in sales decks. It is the closest thing this industry has to a consensus number.

It comes from a poll of 439 SEO service providers (Ahrefs, 2024). Its publisher is an SEO tooling vendor rather than a disinterested party, which is worth knowing before you lean on anything they publish about pricing. To their credit, they published the method in the sentence that produces the figure:

“If we assume all surveyed SEOs charge the upper end of their pricing tier (e.g., $1,500, from $1,001–1,500), and then take the average monthly retainer rate for each subset…”

Read that again, because it is doing a lot of work. Every respondent is entered at the ceiling of their price band before the average is taken. Someone who told the survey they charge between $25,000 and $50,000 enters the calculation at $50,000. It is an upward adjustment applied to the entire sample in one direction, and the top band is open-ended, so “upper end” there is not even defined.

The same page contains the figures that contradict it. 68.8% of the 439 providers polled said they charge $2,000 per month or less, and the single most common band was $501–$1,000, at 20.4% of respondents. Those percentages are direct response counts rather than derived numbers, which is why they hold up when the average does not. The sample pools agencies, consultancies and freelancers across several regions with no published weighting, and the figures are US-dollar and at least two years old. Treat them as directional for a European buyer, not local.

The obvious objection to that is that freelancers are dragging the number down, and agencies sit higher. It is a fair objection, and the same survey answers it. They also published a chart that breaks the 439 respondents into three separate panels: freelancers, consultants, and agencies, each with its full spread of price bands.

In the agencies panel, the tallest bar is the $501–$1,000 band. Not the pooled sample: agencies specifically. And the shape around it is the part that matters, because agency pricing does not form a single hump with the average sitting in the middle of it. It is lumpy: the tall bar at $501–$1,000, two smaller ones at $251–$500 and $1,501–$2,000, and a second substantial peak much further up at $2,501–$5,000. (The chart carries no data labels, so I am describing its shape rather than quoting percentages off it, which is the only honest way to read a picture.)

Here is the part that matters, and it is not the part you would expect. The $3,209 average does not land in an empty gap. It lands inside that upper peak, in the $2,501–$5,000 band. What it fails to describe is the typical agency: the most common agency price band tops out at $1,000, and the average is more than three times that.

most common agency price$501–$1,000$3,209the average everyone quotes$2,501–$5,000second cluster of agencies$0$1,000$2,000$3,000$4,000$5,000
Monthly agency retainer. Only verified points are drawn: the modal band, the second cluster, and the quoted average. Bar heights are deliberately not encoded, because the source chart carries no data labels and inventing heights is the error this section is about. Two smaller peaks at $251–$500 and $1,501–$2,000 are left out for legibility.

Two things are worth separating here. The averaging assumption inflates the figure, which is a method problem. But even a perfectly calculated mean would mislead on a distribution shaped like this one, because a mean reports the centre of gravity and this distribution does not have a meaningful centre. It has a crowd at the bottom and a second group several times higher up.

One more thing the chart does quietly: the bands are not equal widths. The $2,501–$5,000 band spans $2,500 while the modal band spans $500. A band five times wider collects five times the price range, so it stands taller on the chart than its share per dollar deserves. The high end looks more populated than it is before any averaging assumption is applied at all.

I want to be clear that the survey’s publisher did nothing wrong here. They disclosed their assumption openly and they published the underlying distribution, which is the only reason any of this is checkable. What happens downstream is the problem. The figure gets republished across dozens of pages, and the sentence that makes it interpretable does not travel with it. Neither does the chart. What arrives at the reader is a clean, authoritative-sounding average with both its assumption and its distribution stripped off.

The practical consequence for you is not academic. If you budget against that number, you are budgeting to the upper group without having decided to. Everything the larger, cheaper group quotes will then read as suspiciously cheap, and you will not have asked the question that actually separates the two: not how much they charge, but what they do for it.

My honest position is that no reliable average exists for what you’re trying to price. Nobody publishes a European or Dutch agency retainer benchmark. Trade-body surveys that do exist measure freelance hourly rates, which is a different unit and a different supplier. Published rate cards skew low by construction, because agencies competing on price publish tariffs and agencies serving large clients quote privately. Every route to a single number is broken in a different direction.

Which is why the rest of this article is questions rather than figures.

Eight Questions to Ask Before You Sign

Take these to a quote and it stops being a price and starts being a specification. They are ordered by how much they usually reveal. A good agency answers all eight without flinching, and several will have better answers than you expect. A confident, specific answer here is a signal in their favour, not evasion.

  1. What are the deliverables per month, in writing, with counts? Not “content support.” Four articles, twelve internal link placements, one technical fix list. If the answer will not survive being written down, that is the answer.

  2. How many hours does this retainer represent, and at what seniority mix? Even from an agency that does not bill hourly. The retainer divided by the hours is the only genuinely comparable number you will get.

  3. Who writes the content: in-house staff, freelancers, or AI? And can I see an unedited sample? All three answers are acceptable. Not being told is not. Ask for something as delivered, before the client edit.

  4. What happens to the work if I leave? Who owns the content, the analytics and search console properties, the tracking setup, the accounts on any third-party tools. Get this before you sign, not during a handover.

  5. What is the minimum term and the notice period? Then ask what happens in month three if it is not working. The answer tells you whether the contract is a partnership or a lock-in.

  6. If I halved this budget, what would you drop first? My favourite question on this list. It forces the agency to rank its own line items by what they believe is load-bearing, and the ranking is often not what the proposal implies.

  7. What will you report on, and what would a bad month look like? If no described outcome would count as failure, the reporting is not measurement. A supplier who can describe their own bad month is a supplier who is measuring something real.

  8. What are you doing about answers that appear above the results? Covered next. It is increasingly the question with the widest spread of answers.

The Line Item Worth a Second Look

One thing has genuinely changed about what an SEO retainer is aimed at, and it is worth raising with any agency you are evaluating.

Search results pages now frequently carry a generated answer above the links, and some of the same questions get asked directly to AI assistants that never show a ranked list at all. Whether that has moved traffic in your market is an empirical question about your market, and anyone who quotes you a confident industry-wide percentage is quoting something they have not verified. I’m not going to give you one either.

What is checkable, today, without a forecast, is a property of the pages themselves.

An assistant assembling an answer works differently from a ranking engine. It pulls passages that stand up on their own: a claim, the evidence behind it, and a line saying what the evidence means, close enough together to survive being lifted out of context. Content written as one continuous argument, where paragraph nine only makes sense if you read paragraph eight, reads perfectly well and cannot be quoted. Content whose claims carry no named source gives an assembling system no reason to prefer it over content that does.

That is a structural property of the writing, and most content retainers have never been specified against it. A brief that asks for a word count, a keyword and a publish date leaves all of it to chance. Keep buying content, by all means. But go and look at what you have already paid for and check whether it holds up. Unlike the traffic question, that is something you can do this afternoon.

A Cheap Way to See What You Have Been Getting

The most useful thing you can do before signing a new retainer, or renewing an existing one, is to stop reasoning about it and look at the work.

Run our free audit on the last article you published. Paste the URL. You get 20 structural checks on how the page is built: crawler access, indexability, metadata, heading structure, internal linking, schema. They run instantly, with no email address and no account. Those results are yours whether or not you go any further.

A screenshot of the cpywrk free audit tool showing a completed structural analysis of a web page, with 20 checks displayed as a list of passing and failing items covering crawler access, indexability, metadata, heading structure, internal linking, and schema, representing the instant audit results available without an email address or account.

If you want the second half, the AI content analysis grades the writing itself against 12 content criteria and 4 experience signals: whether there is a direct answer near the top, whether claims carry evidence and an interpretation, whether there is a quotable line properly attributed, whether the sections stand alone. That part reads your actual text and costs us money to run, so it asks for an email address. No account, no password, no card. The report is emailed to you with a link that works for 30 days and is not indexed by search engines, so you can forward it to whoever needs it: a colleague, or whoever works on the page next.

Two honest notes before you do. First, it audits one page; it is not a whole-site crawl, and it does not look at backlinks or page speed. Second, it diagnoses rather than repairs: you get a list of what is wrong, not a rewritten page.

That second limitation is the reason cpywrk exists. The audit runs these checks on content that has already been published, when changing it means reopening something everyone considers finished. cpywrk runs the same checks while an article is being written. It flags the exact passage that fails and offers a rewrite you apply in one click, on a draft nobody has signed off yet, when changing it is free.

Audit a page free → · No signup for the structural checks.

Write one free article → · Your first article is on us. No card.

cpywrk

Every article here is cpywrk pipeline output: researched, drafted, and run through the same quality and GEO checks the product applies to customer content, then read and approved by a person before it publishes. The blog is the proof.