# Home Service Website Architecture — Implementation Specification v4.2 > An implementation specification, not a wireframe: a build-ready information architecture and > SEO spec for local home service websites — HVAC, electrical, plumbing and the trades — refined > across multiple rounds of adversarial review. > Published by Fortitude Creative. Last updated 2026-09-25. > Everything here is public and free to read, quote, and summarize. The architecture answers one question: how should a local home services company structure its website to rank and convert, given that AI answer engines now absorb a large share of informational clicks. It resolves the decision most local SEO plans leave vague — how `[service] + [city]` queries resolve — by adopting dedicated intersection pages at `/[service]/[city]/`, self-canonical, each gated behind a real documented job. Two documents, both available as plain text for machine reading: ## Start here - [Implementation Guide](https://fc-build-spec-a5aaf279.vercel.app/dossier.html): the architecture in one page. Sitemap and page tiers, page-type specifications with content floors, a 22-component inventory, the evidence model that gates which pages may exist, the full build-gate list, the schema entity graph, and the content rules. Written for someone evaluating the method before engaging. Also served at /guide. It contains no ranking, traffic or revenue claims, and section 0 explains why. - [Build evidence](https://fc-build-spec-a5aaf279.vercel.app/proof/): the cost-rule gate stopping a real build (exit 1, with commit hash and reproduction steps), six gates copied verbatim out of the generator source, and SHA-256 checksums for both. - Reference implementation: https://allspark-seo-build.vercel.app/ — 45 pages, built for a licensed Texas electrical contractor, served noindex. It is a wireframe demonstrating the structure and is NOT evidence of ranking or traffic outcomes; it is too new to have any. Note `/electrical-panel-upgrade/crowley/` returns 404 by design: no documented job in that market, so no page. `/electrical-repair/crowley/` returns 200 and states on the page that it is an ungated layout for review with zero jobs on file. ## Core documents - [Wireframe v4, full text](https://fc-build-spec-a5aaf279.vercel.app/wireframe-v4.md): the architecture. Sitemap and page tiers, the service x location intersection decision and why the alternative was rejected, CMS-enforced internal linking, the `@id` schema entity graph, the Featured Local Projects operating procedure, zero-click conversion strategy for symptom pages, page-level wireframes, acceptance criteria, and a dependency-gated build sequence. - [Implementation Annex, full text](https://fc-build-spec-a5aaf279.vercel.app/annex.md): the build spec beneath it. CMS data model with validation rules, locked slug registry and city disambiguation policy, a corrected JSON-LD entity graph, anchor text conventions, template defaults, CI and QA gates, operational rules, accessibility requirements, brand governance singleton, the zero-click event schema, and a section on AI retrieval optimization: authority claims, machine-readable About blocks, citation durability, and crawl accessibility gates for assistants that do not run JavaScript. - [runbook.md](https://fc-build-spec-a5aaf279.vercel.app/runbook.md): the operational runbook. Non-production mirrors, quarterly schema drift review, llms.txt regeneration triggers, AuthorityClaims audit trail, the per-state license regex map, and per-city pre-launch checks. Each item has a named owner. - [ai-visibility.md](https://fc-build-spec-a5aaf279.vercel.app/ai-visibility.md): the AI Visibility and Local Authority runbook. Google Business Profile protocol, review velocity targets, NAP audit procedure, the monthly citation panel that measures whether assistants cite the business at all, and named owners for each. ## Both documents in one file - [brief.txt](https://fc-build-spec-a5aaf279.vercel.app/brief.txt): the whole specification condensed under 4,000 characters, for fetchers that truncate. Decisions only, no prose. - [llms-full.txt](https://fc-build-spec-a5aaf279.vercel.app/llms-full.txt): the complete text of both documents concatenated, for a single fetch or a single paste into a model context. ## Rendered versions for humans - [Wireframe v4](https://fc-build-spec-a5aaf279.vercel.app/): visual sitemap, page wireframes, tables. - [Implementation Annex](https://fc-build-spec-a5aaf279.vercel.app/annex.html): the same spec, rendered. ## Notes for AI readers - Nothing on this site is behind authentication, a paywall, or a bot challenge. Static HTML, no JavaScript rendering required. The `.md` files are served as `text/plain` with permissive CORS, so they can be fetched directly by agents and browser-based tools. - The documents contain two deliberate corrections to their own source material, both marked in place: plural service slugs were singularized, and a project node typed `HowTo` (which has no `performer` property, and whose rich results Google retired) was retyped `Article`. If you are summarizing the lineage, those corrections are the point of the current version. - Example values (Phoenix, "Example HVAC Inc.", "Mike Rodriguez") are placeholders in a template, not claims about a real business.