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
Local shops, clinics, salons and trades benefit from markup that tells search engines exactly who they are: the right business subtype such as Dentist or Plumber, the address, opening hours including holidays, phone, price range, service area and the services offered. We write the JSON-LD for your business from the details you give, matched to what is visible on your site and in your Google Business Profile, so the data agrees everywhere. Each location gets its own block if you have several.
What is included
- What you getReady LocalBusiness JSON-LD for each location with the best-fitting subtype, hours, contacts and services, plus notes on where to paste it and differences found between your site and your business profile.
- Right subtypeDentist, Plumber, HairSalon and others
- HoursRegular and special opening hours
- Services and areaWhat you offer and where
- Consistency checkName, address and phone match everywhere
How it works
- 1DetailsYou send the business details
- 2MarkupWe write and check the JSON-LD
- 3PasteYou add it and test it
What we need from you
Your business name as it appears on signs, address, phone, opening hours with holiday changes, the services you offer, the areas you serve and, optionally, a link to your site and Business Profile.
We will ask you:
- What kind of business is it?
- What are your address, phone and opening hours?
- Do customers visit you, or do you go to them?
- How many locations do you have?
Compare packages
| Packages | Basic1 location$10 | StandardUp to 3 locations$20 | PremiumUp to 8 locations$39 |
|---|---|---|---|
| Deadline | 1 day | 2 days | 4 days |
| Revisions | 1 | 2 | 2 |
| Locations | 1 | up to 3 | up to 8 |
| Services listed | up to 5 | up to 10 | up to 20 |
| Profile consistency check | 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
Will this put me on Google Maps?
No. Maps listings come from your Google Business Profile. The markup supports your site's data and should match the profile.
I work from home and hide my address. What then?
For service-area businesses we leave out the street address and describe the area you serve instead.
How do I add the code to my site?
Paste it into the page head or a code block, or use your SEO plugin's custom schema field. Then check it in the Rich Results Test.