Case Study — Website Build
A 708-page WordPress build engineered from the ground up with search performance as a foundational requirement — not an afterthought. Every page structured, every template schema-marked, every URL architecture decision made with crawlability and ranking potential in mind.
Pages Built
Schema Coverage
Industry
Platform
The Brief
The agency came to us with a clear mandate: build a large-scale HVAC website on WordPress that could compete for local and service-area search terms across a wide geographic footprint from day one. The client served multiple service areas, offered a broad range of HVAC services, and needed a site structure that could scale — both in terms of content volume and search visibility.
The core requirement was that search performance would be a foundational architectural decision, not something bolted on after development was complete. Every URL structure, every internal link, every template, and every piece of structured data needed to be deliberate and optimised before a single page went live.
The site needed to cover individual service pages, location pages for each service area, combined service-location pages, FAQ content, and the full supporting infrastructure of a well-architected WordPress site — all while ensuring that the 708-page scope wouldn't create crawl budget problems, thin content penalties, or indexation issues at launch.
The Approach
The URL structure was the first decision made — not the last. We designed a hierarchical architecture that mapped cleanly to how people search for HVAC services: by service type, by location, and by service-location combination. This structure gave Google a clear signal about what each page was about and how the pages related to each other, and it gave internal linking a logical backbone to follow.
Each core HVAC service — AC installation, furnace repair, heat pump maintenance, and so on — had a dedicated service page that served as the topical authority hub for that service across all locations. These pages were written and structured to rank for broad service terms while linking down to the location-specific pages where the more commercially targeted search volume lives.
Each service area received its own location landing page with unique content covering the local context — service area coverage, local relevance signals, and embedded LocalBusiness schema with precise geo-coordinates. These pages were not thin duplicates of each other; each had differentiated content that made them indexable on their own merits rather than risking a duplicate content classification.
With 708 pages, the risk of creating large numbers of thin or near-duplicate pages was real. We addressed this through strict content differentiation requirements for service-location combination pages, canonical tag architecture that pointed thin variations to the appropriate canonical source, and a sitemap strategy that submitted only the pages we were confident Google should index.
Structured Data
Most sites add structured data retrospectively, after the build is complete and the team has moved on. On this project, we implemented schema as part of the build — every page template was configured with the appropriate JSON-LD before the site launched. This meant there was no period where the site was live without schema, and no backlog of implementation work to return to.
With 708 pages across multiple templates, manual JSON-LD was not feasible. We built dynamic schema automation within the WordPress theme — each template type pulled the relevant page data and generated the appropriate schema programmatically. This meant that every new page published after launch would automatically receive the correct schema without any manual intervention required.
Every implemented schema type was validated against the Google Rich Results Test before the site launched. Zero validation errors at launch.
Platform Configuration
WordPress out of the box is not configured for search performance at scale. Plugin defaults, automatic URL generation, and theme-level code decisions can all introduce technical SEO problems that accumulate quietly until they're large enough to affect rankings. On this build, every platform-level decision was made with SEO in mind from the start.
Deliverables
Full 708-page WordPress build with search-first URL architecture across service, location, and service-location page types
Dynamic JSON-LD schema automation across all page templates — LocalBusiness, Service, FAQPage, BreadcrumbList, WebSite, and Organization schema at launch with zero validation errors
WordPress SEO configuration — permalink structure, robots.txt, XML sitemap strategy, canonical tags, and noindex rules applied before launch
Internal linking architecture connecting service hubs to location pages and service-location combinations, establishing topical authority flow
Schema architecture documentation and white-labeled implementation report delivered to the agency for client presentation
Search Console property setup, sitemap submission, and post-launch indexation monitoring framework
Engagement Details
Services Used
Similar Situation?
If this engagement matches a situation you're dealing with — a new build that needs search architecture, or an existing site that was never set up correctly — book a call and let's talk through it.
Book a Strategy CallIf any part of this engagement sounds like a situation you're dealing with right now, that's the starting point for a conversation. Book a free strategy call — no obligation.