Payment protectionDetails
- Revisions within the package are free.
- If you do not respond within 3 days of delivery, the work is accepted automatically.
The money is reserved when you pay and released only once you accept the work.

Example result
SEO audit: website of a regional plumbing company
Summary
| Area | Score | Main issue |
|---|---|---|
| Indexing and crawling | Needs work | 38 blog tags pages indexed, thin content |
| Technical health | Fair | Mobile load time 4.8 s on service pages |
| On-page | Needs work | 11 of 18 service pages share near-identical titles |
| Local signals | Weak | Town pages are copies with the town name swapped |
| Content | Fair | Blog traffic is high, but posts do not link to services |
Findings (excerpt)
1. Duplicate and weak titles (high priority)
11 service pages use the pattern "Plumbing Services | Northgate". Searchers and search engines cannot tell "boiler repair" from "drain unblocking".
| Page | Current title | Suggested title |
|---|---|---|
| /boiler-repair | Plumbing Services, Northgate | Boiler Repair in [City], Same-Day Callout, Northgate |
| /blocked-drains | Plumbing Services, Northgate | Blocked Drains Cleared in [City] from £89, Northgate |
2. Town pages are near duplicates (high priority)
The 7 town pages are 94% identical text. Each needs at least 250 words unique to that town: areas covered, typical jobs there, travel time, a local customer review.
3. Slow service pages on mobile (medium)
Hero images average 1.9 MB. Compressing to WebP and setting width to 1,200 px would bring load time to about 2.5 s.
4. Blog does not pass value to services (medium)
The top 10 posts get 62% of organic visits, but only 2 of them link to a service page. "Why is my boiler losing pressure?" alone gets about 1,100 visits a month and links nowhere.
5. Tag pages indexed (low)
38 /tag/ pages with 1–3 posts each. Set them to noindex.
Prioritised action plan
| # | Action | Effort | Impact | Who |
|---|---|---|---|---|
| 1 | Rewrite titles and meta descriptions for 18 service pages | 1 day | High | Content |
| 2 | Write unique content for 7 town pages | 3–4 days | High | Content |
| 3 | Add service links to the top 10 blog posts | 2 hours | Medium | Content |
| 4 | Compress hero images | 2 hours | Medium | Developer |
| 5 | Noindex tag pages, update sitemap | 1 hour | Low | Developer |
Re-check: crawl again 6 weeks after items 1–3 are live and compare impressions for "[service] + [town]" queries.
Client: Northgate Plumbing & Heating, 11 engineers, serving one city and 6 nearby towns Site: 214 pages: home, 18 service pages, 7 town pages, 160 blog posts, contact and legal pages Goal: more calls from local searches such as "boiler repair [town]"
The client and all details are made up.
About this service
Sites that have grown for years rarely know what they hold: duplicate service pages, outdated offers, posts by people who left, landing pages from old campaigns. A content inventory lists every page with its type, topic, date, word count, owner and status, so you can plan updates, a migration or a cleanup from facts. We go through your pages from the sitemap or the list you paste, record the details for each and give every page a status: current, update, merge, archive or remove.
What is included
- What you getA content inventory table with one row per page (URL, title, type, topic, date, approximate word count, status and a note), delivered as text you can paste into a spreadsheet, plus a summary of what the inventory shows.
- Row per pageURL, title, type, topic and date
- Size and stateText length and outdated content
- StatusCurrent, update, merge, archive or remove
- SummaryPatterns the inventory reveals
How it works
- 1PagesYou point to the sitemap or list
- 2InventoryWe record each page's details
- 3TableYou paste it into your sheet
What we need from you
A link to the site and its XML sitemap, or the list of URLs pasted as text, the columns you need beyond the standard ones and, if you have them, traffic figures per page.
We will ask you:
- Where should we take the page list from?
- What will the inventory be used for?
- Which extra columns do you need?
Compare packages
| Packages | BasicUp to 50 pages$12 | StandardUp to 150 pages$25 | PremiumUp to 400 pages$45 |
|---|---|---|---|
| Deadline | 2 days | 3 days | 5 days |
| Revisions | 1 | 2 | 2 |
| Pages inventoried | up to 50 | up to 150 | up to 400 |
| Columns | up to 8 | up to 10 | up to 12 |
| Status per page | Yes | Yes | Yes |
| Order Basic | Order Standard | Order Premium |
Payment protection
You pay when you order, but the money is released only for accepted work.
- Fixed priceThe package price does not change after you pay.
- The money is reservedWhen you pay, the amount is only reserved. It is released to the service once you accept the work.
- Checked before deliveryEvery result goes through a quality check before it reaches you, and you see it on the order page before accepting it.
- Free revisionsAsk for changes within your brief as many times as the package allows.
- Acceptance after 3 daysIf within 3 days of delivery you neither accept the work nor ask for changes, it is accepted automatically. If you write in the order chat after delivery, the order waits; once we answer, we may start the 3 days again and will say so in the chat.
- Redo or a full refundIf the result does not match your brief and the revisions did not fix it, or the work takes more than twice its deadline, write in the order chat: we will redo the work or refund the payment in full.
Questions and answers
Can you include traffic for each page?
We cannot see your analytics, but if you paste page figures, we add them as a column and use them for the statuses.
How do I get the table into a spreadsheet?
The table comes as text with columns separated so it pastes straight into Google Sheets or any spreadsheet.
Is this a content audit?
It is the step before one: a complete list with first-pass statuses. A deeper quality audit of each page is a separate order.