A fair SEO contract names the deliverables, the reporting schedule, the notice period, and who owns the content, accounts and data the work produces. It never promises a ranking. If a draft is detailed about the fee and the term but vague about the work, it protects the seller, not you.
This post covers the clauses worth signing, the clauses to refuse, how a retainer differs from a project agreement, and a checklist table you can hold any draft against. One plain caveat: I do SEO, I'm not a lawyer, and none of this is legal advice. Have a lawyer read anything with a long term or a large fee before you sign it.
What an SEO contract is for
An SEO contract, sometimes called an SEO agreement or a statement of work, turns a sales conversation into written obligations. It should answer six questions: what work gets done, how you'll know it was done, what it costs, how long it runs, how either side ends it, and who owns what when it ends.
A lot of the messy handovers I've had to untangle didn't start with bad SEO. They started with a contract that skipped one of those six questions, so the answer got decided later by whoever held the logins.
If you haven't picked a provider yet, my guide to hiring an SEO consultant covers what to ask before any draft exists. This post assumes a proposal or contract is already in front of you.
Clauses worth signing
Each of these protects you in a specific way. If one is missing from a draft, ask for it in writing. A provider doing honest work has no reason to object to any of them.
Scope and deliverables
Scope is the list of work the fee pays for. A useful scope names outputs you can check: a technical audit delivered by a set date, a set number of pages rewritten each month, local listings built or cleaned up, a plan reviewed each quarter. It says who implements changes (the provider, your developer or both), who approves content before it goes live, and what falls outside the fee, such as development hours, photography or ad spend.
The test is simple. At the end of any month, could you open the contract and tick off what arrived? If you can't, the scope describes effort, not deliverables. In my own engagements every task in the plan has an owner, a dependency and a time estimate, which is what makes a scope checkable line by line.
Reporting cadence
You should hear what changed on a fixed schedule, in a fixed format, from data you can check yourself. For most retainers that means a monthly report plus a quarterly review of the plan. The contract should name the data sources and say reports draw on your own Google Analytics and Search Console, not only on a rank tracker the provider picks.
Every monthly report I send follows the same order: an executive summary, key metrics against last month, the baseline from month one, the work done in numbers, the wins and the drops (including pages that fell), and the action items for next quarter. You can see how I plan and report engagements on the services page. Whatever format your provider uses, ask for the baseline to stay on every report and for traffic to be tied to enquiries or orders. The guide to measuring SEO ROI explains that part.
Ownership of accounts, data and content
This clause decides how painful an ending is. It should say, in plain words, that you own the domain, the hosting account, the website and its code, your Google Business Profile, your Google Analytics and Search Console properties, and every page, image and line of copy produced for you once it's paid for.
The provider gets access as a user, added from your accounts, never the other way round. Google's role settings make this straightforward:
- Google Business Profile (GBP): a profile has one primary owner, and that should be you. According to Google's help page on profile roles, managers have mostly the same access as owners but can't add or remove users or remove the profile, which makes manager the right role for a provider.
- Google Analytics 4 (GA4): only Administrators manage users. Keep that role inside your business and give the provider Editor or lower.
- Search Console: keep a verified owner on your side. Google's Search Console help notes that if all verified owners are removed, the remaining users and delegated owners lose access after a grace period.
- Domain and hosting: registered to your business, paid from your card, with the provider added as a user you can remove.
Accounts the provider sets up for you, such as directory listings or a Tag Manager container, should be created under a company email address you control, so they don't end up stranded in someone else's inbox.
Notice period and term
Two different numbers live in this clause. The term is how long the contract runs; the notice period is how much warning either side gives to end it. Results from SEO arrive over months, not weeks (see how long SEO takes), so a fixed initial term that matches the plan's opening phase is reasonable. After that, a rolling monthly agreement with notice that matches the billing cycle, one month's notice on a monthly retainer, keeps both sides honest.
Look for three things here: notice that works in both directions, a termination-for-cause right that lets you leave early if agreed deliverables stop arriving, and a renewal date you can see. Deliverables are what you can hold a provider to. Rankings are not.
What happens to links and content if you leave
A good exit clause says four things. Content and code stay on your site and belong to you. Links earned on other websites stay where they are. The provider hands over working files, logins it created, past reports and a list of the links it built. Access is removed on the last day, by you or by them.
Links need a sentence of their own. A link earned on an independent site through a guest article, a local sponsorship or a citation isn't something the provider should be able to take back. Links placed on sites the provider controls, or rented by the month, tend to disappear when the invoices stop, and Google's spam policies list buying links for ranking purposes as link spam in any case. Ask where links will come from before you sign. Rank-tracking history and audit crawls usually live in the provider's paid tools, so ask for exports of that data as part of the handover.
Confidentiality
Your provider will see revenue figures, lead data and admin logins. A mutual confidentiality clause covers that information during the contract and after it ends, and protects the provider's own methods in return, which is fair. The clause should cover whether the provider may name your business, show your results or use your reports in its own marketing, and require your written approval before any of that happens.
Clauses to refuse
Some terms aren't worth negotiating down. Strike them, or take them as the answer to whether this is the right provider.
Ranking guarantees
Nobody controls Google's results, so nobody can promise a position in them. Google's own page on hiring an SEO says no one can guarantee the top ranking on Google, and it adds a direct warning:
“Beware of SEOs that claim to guarantee rankings.” Google Search Central, Do you need an SEO?
Guarantees tend to arrive with an escape hatch: rankings for phrases few people search, a refund paid as extra months of service, or a position measured on a tool the provider chooses. A guarantee on a phrase nobody types is easy to keep. What a contract can fairly promise is the work itself, the reporting, and the standards the work follows.
Long lock-ins with no exit
Picture a twelve-month term that auto-renews, has no termination for cause, and charges every remaining month as an early-exit fee. That turns a service into a debt. Watch too for renewal notice windows that close weeks before the renewal date, so the contract rolls over before you notice. If a provider needs a long commitment to make the numbers work, ask what the fee pays for in each month of it.
The provider owning your Google Business Profile or analytics
Watch for providers that set up your Business Profile, GA4 property or Search Console under their own accounts and add you as a user, or don't add you at all. It looks tidy while things go well. When the relationship ends, your reviews, photos and years of traffic data stay in their account, and getting them back means a support request to Google or a negotiation with a provider you've just left.
Refuse any clause that makes the provider the primary owner or sole Administrator, and be wary of a website built on a platform you can't export from. Profile ownership is the base that Google Business Profile optimization builds on, so it needs to be yours from day one.
Vague “SEO services” scope
“SEO services” as a scope commits the provider to nothing you can check, and so do “ongoing optimization” and “monthly SEO package”. Any month's work counts as delivery, including a month with none. Ask for the list of outputs, the order they'll arrive in, and who signs them off. If the reply is that SEO is too fluid to write down, the plan doesn't exist yet.
Retainer vs project agreements
The difference is what you pay for. A retainer pays a fixed monthly fee for ongoing work against a plan. A project agreement pays for a defined deliverable that ends on a set date. Neither is better; they suit different jobs.
| Agreement | Fits | Fee shape | Ends when | Watch for |
|---|---|---|---|---|
| Retainer | Ongoing content, technical fixes, links and local SEO | Fixed monthly fee | Either side gives notice | Deliverables drifting into “activity” |
| Project | Audits, migrations, traffic recovery, site builds | Fixed fee, often split into milestones | The deliverable is accepted | Scope that stops before implementation |
| Advisory or hourly | Teams with in-house writers or developers | Per hour or per block of hours | Hours run out or notice is given | No record of what the hours bought |
A sensible shape for many businesses is a fixed project that ends in a plan, followed by a retainer that carries the plan out. That's close to how I work: every engagement starts with a domain-wide analysis of the business, the market, competitors and what buyers search, which ends in a quarter-by-quarter plan, and ongoing work then runs month to month against it.
For a project, check that the contract defines when the deliverable counts as accepted and whether implementation is included, because an audit that nobody implements leaves the work undone. The price drivers behind each model are covered in what SEO costs.
SEO contract checklist
Hold any draft against this table. Each row should have a clear answer in the contract itself, not in a sales email or a pitch deck.
| Clause | What a fair version says | Red flag |
|---|---|---|
| Scope | Named outputs per month or phase, who implements them, and what is excluded | “SEO services” with nothing listed |
| Reporting | Monthly report from your own GA4 and Search Console data, with the baseline kept on every report | Ranking screenshots only, or no set schedule |
| Accounts | You hold the owner or Administrator role; the provider is a user | Provider is primary owner or sole Administrator |
| Content and code | Yours once paid for, and it stays on your site | Content licensed to you only while you keep paying |
| Links | Earned on independent sites and left in place if you leave | Rented links, or links on sites the provider controls |
| Term and notice | Initial term tied to the plan, then rolling monthly with notice both ways | Long auto-renewing term with an exit fee |
| Exit and handover | Files, logins, reports, link list and data exports handed over | Nothing written about leaving |
| Confidentiality | Mutual, and case studies need your written approval | One-way, or open use of your results in their marketing |
| Promises | The work, the reporting and the standards the work follows | Guaranteed rankings or traffic |
| Fees | Fixed fee, with written approval for any change in scope or price | Fees that rise without your sign-off |
Before you sign
Five steps, in this order, before any signature goes on the page:
- Ask for the scope as a list of deliverables with dates or monthly quantities.
- Check that every account in the ownership clause is in your business's name, then add the provider as a user yourself.
- Read the term, renewal and notice clauses together, and put the renewal date in your calendar.
- Ask where links will come from and what happens to them if you leave.
- Send anything with a long term or a large fee to a lawyer before signing.
If you want to compare a draft with how a scoped engagement runs, with named deliverables, monthly reporting and accounts that stay in your name, see how I work as an SEO consultant.

