Three proposals sat in the same thread and none of them priced the same crawl. One treated the property as a 40-page brochure. One sold unlimited keywords into a category that already carries a three-year authority gap. One never asked for Search Console access and still put a number on the work.

That mismatch is the whole problem. A public rate card forces every property into the same box. Site size, competition, access and the authority gap do not live in a box. We keep pricing private because the scope has to be true before the number is useful. A buyer trying to compare SEO quotes needs a way to line those quotes up without a menu. This is how we do it, and how to read anyone else’s number the same way.

Why a public rate card breaks the comparison

A published menu looks fair. It is not. It prices a label, not a site. “Monthly SEO” is a label. “Technical plus content for a 1,800-URL Magento catalogue with a locked staging environment” is a site. Those two things do not share a cost.

When we publish a card, the cheap quote always wins the first pass. The cheap quote is cheap because it skipped the crawl, skipped the access check, and skipped the authority gap. You then spend a quarter discovering that the work was never in the number.

We refuse that shape. The first useful artefact is a scope, not a tariff. Until the scope names the property, any peso figure is theatre.

Site size is more than the URL count

Site size is the first of the real seo pricing factors, and it is not “how many pages marketing thinks we have”. It is indexable URLs, parameter space, language versions, PDF weight, faceted navigation, and whether the CMS will let us ship templates without a two-week ticket.

A 60-URL brochure and a 4,000-SKU catalogue with colour-size filters are not the same job. The brochure might need a tight technical pass and a small content set. The catalogue needs crawl budget work, canonical discipline, internal-link architecture, and template-level on-page. Hours diverge before anyone writes a title tag.

We also count what the crawler wastes time on. Orphan URLs, leftover launch folders, staging copies that leaked, and faceted combinations that explode the index all add hours. If a quote does not mention those, it did not measure site size. It counted a sitemap and hoped.

Migrations sit in the same bucket. A replatform mid-retainer is not a courtesy. It is a second scope. If the rebuild is already booked, the SEO number has to include redirect maps, pre-launch crawls, and a freeze window. Leaving that out is how a “cheap” Philippines retainer blows up in month two.

Competition sets the work, not the package name

Competition is the second factor, and it is the one most menus pretend is equal. Ranking in a thin local category is not the same work as going after a national commercial head term that already has newspapers, marketplaces and three well-linked incumbents on page one.

We look at who already owns the SERP, how often the layout shifts, whether ads crowd the top, and whether the query is still ten blue links or a thicket of modules. That changes content depth, link earning, and how long the technical work has to stay in the queue before content can land.

A quote that prices “10 keywords” without naming the competitive set is not comparable to a quote that priced the actual SERPs. The first quote priced a spreadsheet row. The second priced the fight.

Local packs behave differently again. A Metro Manila service-area business and a nationwide ecommerce play do not share a content or citation load. Mixing them under one package name is how buyers end up comparing two numbers that never described the same competition.

Access is a pricing factor, not a kickoff courtesy

Access decides what we can even start. Search Console, Analytics, the CMS, the staging server, the tag manager, the CDN, and the person who can approve robots.txt are not onboarding niceties. They are the difference between a measured scope and a guess.

If Console is locked to an agency that left last year, the first month is recovery, not optimisation. If the CMS is a locked SaaS theme and every title change needs a developer in another timezone, on-page hours stretch. If staging is a copy that never matches production, every technical recommendation gets re-tested twice.

We price access as we find it. A property with clean owners, a staging environment we can crawl, and a developer who answers in the same week is a different job from a property where the DNS contact is a former contractor and the theme cannot expose H1s. Quotes that skip this always look cheaper. They are cheaper because they assumed a door that is not open.

White-label work has the same problem in reverse. If we are sitting behind another team, access runs through their queue. That queue is part of the cost. Pretending it is not is how a scope misses its own critical path.

The authority gap is where quotes quietly diverge

The authority gap is the distance between the live domain and the domains already winning the terms that matter. It is not “we need more backlinks”. It is referring-domain quality, historical link decay, brand search, and whether the site has enough independent evidence to be trusted on the queries it wants.

A new domain chasing a three-year incumbent is not a content problem first. It is an evidence problem. Content still has to be built, but the hours and the sequence change. A quote that prices only articles against a wide authority gap will spend the retainer writing into a SERP that will not move.

We measure the gap before we price content volume. That stops the fantasy where 20 posts a month is treated as a substitute for the gap. Sometimes the honest scope is technical cleanup, a smaller content set, and a slower link-earning plan. Sometimes the gap is small and content can lead. Those two retainers should never share a public rate.

AI-search work sits here too. If the property wants visibility in answer surfaces, the gap is not only classic links. It is extractable content, entity clarity, and whether the site is even eligible to be cited. That is extra scope, not a free overlay on a 2022 retainer.

What has to be named before a number is honest

A number we will stand behind names the property and the work. At minimum:

The CMS and whether templates are editable. Indexable size, not the marketing page count. Current access state for Console, Analytics and staging. The competitive set for the terms that actually matter. The authority gap against that set. Any migration, design freeze, or legal review that will stall publishing. Who writes, who approves, and in what language. Whether local, national, or both. Whether development hours are inside the SEO scope or billed by another team.

If a proposal cannot name those, it is not a scope. It is a price looking for a site. We would rather send a short refusal than invent a retainer around missing facts.

Audits are how we get those facts when they are not already in the room. A scoped audit is not a sales PDF. It is the measurement that lets the retainer be honest. If the audit is skipped, the first month of the retainer becomes the audit, and everyone pretends that was the plan.

Keyword research cannot be lifted out of the scope

Keyword research is not a cheap PDF you peel off the side of a retainer. It sets the competitive set, the content map, the internal-link plan, and which templates deserve on-page hours. Until that map exists, content volume is a guess and so is the authority-gap plan.

We keep that work inside the same conversation as technical and on-page because the map changes the hours everywhere else. A term list copied from a rank tracker is not research. Research is demand, intent, SERP type, language variants, and whether the site can even win that intent with the current templates.

That is why our keyword research services sit in the scope rather than as a bolt-on spreadsheet. The rest of the content and on-page plan cannot be priced until the map is real. Buyers who compare a “research included” line against a “research extra” line without reading the method are comparing two different jobs.

If the property already has a map we trust, we do not redo it for theatre. If the map is a leftover from a previous agency and it still chases head terms the site cannot win, we price the rebuild. That decision is an seo pricing factor. It is not a package upgrade.

How Philippines SEO cost actually gets built

Seo cost philippines is not a Manila day rate with a British accent. It is hours against the factors above, sequenced so technical debt does not sit under new content, and staffed so English-language quality control actually happens on the work that ships.

British-led delivery means the strategy, the scope, and the sign-off sit with people who will still be on the call when the crawl disagrees with the CMS. Production can sit in the Philippines. The cost is the combined load, not the cheapest timezone in the chain. A quote that only prices production hours will look kind until the first technical dispute.

We build the number in layers. Discovery and access. Technical and on-page against the real templates. Content against the map, not against a blog quota. Local if the property actually needs maps and citations. Development only if the theme or the stack requires it. AI-search work only if the site is in a shape where that labour is not wasted. White-label markup only if we are behind another team’s process.

There is no public card because those layers do not stack the same way twice. A 90-URL professional-services site with clean access and a small authority gap is a different stack from a marketplace with faceted crawl waste and a two-year gap against imported competitors. Forcing both through one Philippines package is how the second site gets a brochure retainer.

Claims that should stop the comparison

Some quotes should leave the pile before you line up the hours. Guaranteed positions, “page one in 30 days”, and any number tied to a ranking as if it were a deliverable are not pricing. They are advertising.

We treat those the same way we treat any other overclaim in a commercial document. The ACCC misleading claims guidance is the standard we use when we throw that kind of proposal out of the comparison, even when the buyer is sitting in Manila rather than Melbourne. A ranking is not a product we can hand over. A scope is.

Traffic promises without a baseline, “unlimited” anything, and retainers that never name a CMS belong in the same bin. Unlimited is how a team hides the fact they have not measured site size. A missing CMS is how they hide access. A traffic promise without Console history is how they hide the authority gap.

If two remaining quotes both refuse those claims, then you can compare them. Until then you are comparing a scope to a slogan.

How to line two private quotes up

Once the slogans are gone, compare the named work, not the monthly figure. Put both proposals against the same list: site size as measured, competition as named, access as it actually stands, authority gap as admitted.

Ask who does the crawl, who writes, who ships in the CMS, and who is on the call when Search Console disagrees with the theme. Ask what happens to the hours if a migration lands in month three. Ask whether content volume was set before or after the keyword map. Ask what is out of scope in plain language.

The useful quote is the one that gets smaller when the site is simple and larger when the gap is real. The dangerous quote is the one that stays the same size no matter what you tell them. That second quote is a rate card wearing a custom cover.

If one proposal is still a package name and the other is a property, they are not in the same comparison. Stop trying to average them. Pick the one that described the site you actually run.

When to request a scoped audit

The next useful step is not another round of menus. It is a decision: is there enough in the current proposals to brief a real scope, or is the property still unmeasured.

If Console is dark, if the URL count in the quote is a guess, if nobody has named the competitive set, or if the authority gap was never mentioned, stop comparing numbers. Request a scoped audit. That audit should return site size as crawled, access as found, competition as SERPs, and the gap as evidence. Then a retainer can be priced.

If those facts are already in the room and the work is a full technical, on-page, content and local programme, that is the point at which our seo services philippines engagement is the right next conversation - including migrations, white-label, development and AI-search work when the site actually needs them. If the facts are not in the room, asking for that engagement early just recreates the three-proposal thread you started with.

Bring the live site, the access state, and the quotes you already have. We will tell you whether the scopes are describing the same crawl. If they are not, we will say so before anyone pretends the cheapest line was the honest one.