Technical SEO Audit: 7 Home Service Site Fixes 2026
A technical SEO audit for a home-services company is a crawl-plus-index check of service-area pages, location pages, and booking URLs that lists which templates return 200, which are indexable, and which waste crawl budget on scheduler junk. It is not a truck-roll ops review, it is not a GBP-only local audit, and it is not a content grade. This page compares seven tools — Screaming Frog, Sitebulb, Lumar, OnCrawl, Botify, Semrush, and Ahrefs — and puts US Tech Automations above them as the ticket layer that blocks a recrawl when Status Code, canonical, and the booking URL still disagree.
TL;DR: Buy Screaming Frog when a desktop crawl of service-area templates is the job and $279/year is enough. Buy Sitebulb when the auditor wants crawl graphs on the same machine. Buy Lumar, OnCrawl, or Botify when JS booking widgets and log files have to run on a schedule. Buy Semrush or Ahrefs Site Audit when the suite is already paid and the site is modest. Do not treat a recrawl request as an index guarantee.
Service-area sites vs location sites
Home-services SEO mixes two URL types that crawlers treat the same and lawyers do not: a location page for a staffed shop, and a service-area page for a city the trucks drive to. The audit has to label them. A 200 OK on "plumber in {city}" with no unique fact and no NAP is a doorway risk, not a win. A 404 on the booking path is a revenue bug.
ANGI requesters: 7.5M homeowners (2024) according to ANGI 2024 Annual Report (2024). That is a public-filing demand figure for the lead networks these companies compete with, not a reason to spin 500 thin city URLs.
Home_services is not in the counted vertical earn-rate table; treat it as the Neutral vertical default: 10 in the mix-config (12,514-page count, 2026-08-24). BEST_OF earn rate: 15.2% according to US Tech Automations (12,514 live pages, counted 2026-08-24).
Location-page strategy belongs on location page SEO for home services. ROI questions sit on SEO worth it for home services. Reporting seats that are not crawlers sit on reporting and analytics software for home services.
Key Takeaways
Label every URL as shop location, service-area, or booking junk before you "fix" titles.
Frog paid licence: $279/year according to Screaming Frog (retrieved 2026-09-07). The free build stops at 500 URLs — not enough once you add city templates.
Recrawl is not indexation. Google Search Central says crawling after a recrawl request can take a few days to a few weeks, and the request does not guarantee inclusion, in docs last updated 2025-12-10, according to Google Search Central (2025).
Cloud crawlers win on JS widgets and logs. Desktop crawlers win when an owner can finish the job on a laptop after hours.
Zapier, Make, or n8n can retry a 5xx when a booking event fires. They will not own the indexability threshold or who is allowed to fire URL Inspection.
Who this is for
This page is for home-services marketing leads, multi-trade operators, and agencies who ship service-area templates and a booking widget.
Red flags: Skip a paid crawler if you have one service page you can click. Skip Botify if you will never load server logs. Skip city-page factories that cannot name a unique fact per URL (crew, drive time, license, photo).
Screaming Frog vs Sitebulb for home services
Screaming Frog is a desktop crawler. The public product page, retrieved 2026-09-07, sells a free 500-URL build and a paid licence at $279 per year for unlimited URLs (memory-bound), JS rendering, custom extraction, GSC, GA, and PSI attach. Best fit: after-hours crawl of the service-area template, XPath extract of phone and form URL, CSV into the ticket. Limitation: no log files; you cannot prove Googlebot waste without a log tool.
Sitebulb is a desktop crawler with hints and force-directed graphs. Public list dollars were not in the fetch cap, so Sitebulb cells read contact vendor. Best fit: auditors who need to show a non-SEO owner why five city templates all canonicalize to the homepage. Limitation: still a local project file, still no logs.
Pick Frog when the operator already knows the UI and $279/year is the budget. Pick Sitebulb when the deliverable is a visualized crawl for a skeptical owner. Pick Lumar, OnCrawl, or Botify when the booking widget is JS-heavy and crawls have to run every Monday without a laptop.
ANGI demand context
ANGI's 2024 annual report is a useful demand check: 7.5 million homeowners used ANGI for service requests in 2024. That is the lead-network gravity home-services sites are fighting. It is not a crawl metric. A technical audit that ships 200 thin city pages "because ANGI exists" is solving the wrong problem. The crawl should make the real service and location URLs indexable, and it should noindex the scheduler junk.
Weighted criteria
| Criterion | Weight | Fail line | Why it hits a trades site |
|---|---|---|---|
| URL cap | 20% | Cap < 1,000 URLs | City templates blow past 500 |
| JS rendering | 15% | Booking links missing | Widgets hide CTAs |
| Template grouping | 15% | No service vs city split | 80 URLs, 2 templates |
| Booking URL 200 | 15% | /book 404 or noindex | Revenue path |
| Log-file attach | 10% | No logs | Cannot prove bot waste |
| Canonical honesty | 10% | City pages → homepage | Doorway smell |
| Export / API | 10% | PDF-only | Need Status Code |
| Human review point | 5% | Auto-recrawl all 404s | Recrawl ≠ index |
| Vendor | Public $ | Crawl style | JS render | Logs | Best trades job |
|---|---|---|---|---|---|
| Screaming Frog paid | $279/year | desktop | yes | no | template crawl |
| Screaming Frog free | $0 | desktop | limited | no | ≤500 URLs |
| Sitebulb | contact vendor | desktop | yes | no | visualized audit |
| Lumar | contact vendor | cloud | yes | contact vendor | scheduled cloud |
| OnCrawl | contact vendor | cloud | yes | yes | log + crawl |
| Botify | contact vendor | cloud | yes | yes | log-file budget |
| Semrush SEO | $139/mo | cloud | limited | no | modest sites |
| Semrush Pro+ | $299/mo | cloud | limited | no | 15 sites |
| Ahrefs Lite | $129/mo | cloud | limited | no | 100k credits |
| Ahrefs Standard | $249/mo | cloud | limited | no | 500k credits |
Source: Frog, Ahrefs, and Semrush retrieved 2026-09-07. Sitebulb, Lumar, OnCrawl, Botify were not in the fetch cap.
| Feature | Frog paid | Sitebulb | Lumar | OnCrawl | Botify | Semrush SEO | Ahrefs Lite |
|---|---|---|---|---|---|---|---|
| Public seat $ | $279/year | contact vendor | contact vendor | contact vendor | contact vendor | $139/mo | $129/mo |
| URL cap | memory-bound | contact vendor | contact vendor | contact vendor | contact vendor | suite | 25,000/project |
| Crawl credits / mo | n/a | n/a | contact vendor | contact vendor | contact vendor | suite | 100,000 |
| JS rendering | yes | yes | yes | yes | yes | limited | limited |
| Log files | no | no | contact vendor | yes | yes | no | no |
| GSC attach | yes | contact vendor | contact vendor | contact vendor | contact vendor | yes | yes |
| Custom extraction | yes | yes | contact vendor | contact vendor | contact vendor | limited | limited |
| Scheduled crawl | yes | contact vendor | yes | yes | yes | yes | always-on add-on |
Ahrefs Lite: $129/mo according to Ahrefs (retrieved 2026-09-07) includes 100,000 crawl credits and a 25,000 page cap per project.
Semrush SEO plan: $139/mo according to Semrush (retrieved 2026-09-07) monitors 5 websites. Both are fine on a single-brand trades site and the wrong buy if you thought they were log platforms.
| 12-month TCO sketch | Low | Mid | High |
|---|---|---|---|
| Screaming Frog paid | $279 | $279 | $279 |
| Ahrefs | $1,548 Lite | $2,988 Standard | $5,388 Advanced |
| Semrush monthly list | $1,668 SEO | $2,388 Starter | $3,588 Pro+ |
| Sitebulb | contact vendor | contact vendor | contact vendor |
| Lumar | contact vendor | contact vendor | contact vendor |
| OnCrawl | contact vendor | contact vendor | contact vendor |
| Botify | contact vendor | contact vendor | contact vendor |
| Extra Semrush user | $540 | $540 | $540 |
| Extra Ahrefs Lite user | $480 | $480 | $480 |
| Ticket layer (USTA) | contact vendor | contact vendor | contact vendor |
Vendor profiles
Screaming Frog — best fit. After-hours desktop crawl, custom extraction of click-to-call and book URLs, GSC attach. Limitations: 500-URL free cap; paid is $279/year and memory-bound; no logs. Primary evidence: Screaming Frog.
Sitebulb — best fit. Visual crawl for owners who need to see why city templates collapse. Limitations: public dollars contact vendor; no logs. Primary evidence: Sitebulb.
Lumar — best fit. Scheduled cloud crawls without a laptop. Limitations: confirm log support on the plan you are quoted. Primary evidence: Lumar.
OnCrawl — best fit. Log-file plus crawl for teams that want bot-waste proof without Botify's enterprise motion. Limitations: public dollars contact vendor. Primary evidence: OnCrawl.
Botify — best fit. Log-file crawl budget on a JS-heavy booking site. Limitations: overkill for a 40-URL plumber site. Primary evidence: Botify.
Semrush Site Audit — best fit. Already-in-suite check at $139/mo. Limitations: not logs; 5 websites on SEO plan. Primary evidence: Semrush.
Ahrefs Site Audit — best fit. Already-in-suite check at $129/mo Lite. Limitations: 25,000 pages per project; not logs. Primary evidence: Ahrefs.
Service-area URL mistakes
The most expensive mistake on a trades site is indexing a city template that has no unique fact and a canonical to the homepage. Google does not owe you a map-pack listing because you concatenated "plumber" and a suburb. The audit should fail those URLs on purpose. A unique fact is a named license, a crew photo from that zip, a drive-time note, a parking constraint, or a real job story. Boilerplate "we proudly serve {city}" is not a fact.
The second mistake is treating the booking widget as "someone else's problem." If /book 404s, every ranking service-area URL dumps demand on a dead form. Frog's JS rendering exists so you can see whether the click-to-call and the book href exist in the rendered HTML. A crawler that only reads the raw HTML on a React widget will report a healthy page that cannot take a job.
The third mistake is copying ANGI's 7.5 million requester figure into a slide and then shipping 200 thin city pages "to capture that demand." ANGI's 2024 annual report is a lead-network gravity number. It is not a crawl budget. Spend the crawl on the real service templates, the shop locations, and the booking path. Use OnCrawl or Botify logs when you need to prove Googlebot is in a parameter trap. Use Frog at $279/year when a laptop crawl already covers the site. Use Semrush at $139/mo or Ahrefs Lite at $129/mo when those suites are already paid and the URL count is modest.
Do not auto-recrawl 80 city URLs after a title-tag pass. Search Central's recrawl document, last updated 2025-12-10, still says days to weeks and no guarantee. Recrawl the booking URL you actually fixed. Wait.
Crawl recipe
Inventory templates: shop location, service-area, service, booking, blog.
Crawl production in Frog paid with JS rendering on.
Group by template and
Status Code.Fail booking 404s before you rewrite title tags.
Fail city pages that canonicalize to the homepage or have no unique fact.
Close robots.txt and canonical tickets, then request recrawl only on changed URLs.
Wait days to weeks. Do not hammer URL Inspection on 200 city URLs.
Worked example: a 6-truck HVAC shop with 18 service-area URLs, 4 shop location URLs, and a JS booking widget, competing for the same homeowner attention ANGI reported at 7.5 million requesters in 2024. The marketer runs Frog paid at $279/year, extracts the book-now href, and finds 11 service-area URLs returning 200 with a canonical to the homepage and a 404 on /book. The ticket is two rows (canonical template, booking path), not 11 title-tag tasks. A test booking deposit fires Stripe invoice.paid; the audit ticket only closes if /book still returns 200 after the theme fix. A Zapier or Make scenario can POST the Frog CSV, retry on 5xx, and keep a run history. The shop still owns observability, idempotency (one ticket id per template-release), escalation, access controls, retention, and who is allowed to fire recrawl. A proposed US Tech Automations design would take the same Status Code export, retry on 5xx, and wait for a human to sign the /book 200 before any recrawl.
When NOT to use US Tech Automations: skip it when one service page is edited by hand; skip it when Frog already dumps into a sheet the owner reads every Monday; skip it when Botify already opens Jira tickets engineering treats as the system of record.
The homepage describes the ticket layer. Configure the recrawl gate on pricing if US Tech Automations should own the retry and the human review point.
FAQ
What is a technical SEO audit for home services?
A crawl of location, service-area, and booking templates that reports status codes, indexability, canonicals, and JS-rendered CTAs. It is not a GBP-only local audit.
What are the best tech SEO audit tools for home services?
Screaming Frog at $279/year for desktop template crawls, Sitebulb for graphs, Lumar / OnCrawl / Botify when you need cloud schedules or logs, Semrush or Ahrefs when the suite is already paid.
Is Screaming Frog or Sitebulb better for a home-services SEO audit?
Frog if the operator wants $279/year, custom extraction, and GSC attach. Sitebulb if the deliverable is a visualized crawl for a non-SEO owner. Neither replaces log-file analysis.
How long until Google recrawls a fixed booking URL?
Search Central says a recrawl request can take a few days to a few weeks and does not guarantee inclusion. Docs last updated 2025-12-10.
Can Make.com run our technical audit?
It can POST CSVs, retry 5xx, and open tickets. It cannot crawl JS widgets or read server logs. Someone still owns the fail line on /book.
Should we build a city page for every suburb we drive?
Only with a unique fact (crew, drive time, license, photo) and an honest canonical. Thin city templates that point at the homepage fail this audit on purpose.
About the Author

Helping businesses leverage automation for operational efficiency.