Entities, structured data, and co-occurrence signals — building a rich contextual web
| Pos. 4 Primary keyword ranking Zero backlinks to the page | 34 Keywords ranked page 1 Entity co-occurrence effect | 3 AI Overview citations Structured data + entity clarity | 11 wks Time to first page ranking No link building at any stage |
Learning how to rank a service page without backlinks sounds counterintuitive — but this case study proves it is possible, and documents exactly how.
Every SEO conversation eventually arrives at the same point: you need backlinks to rank. Backlinks are the currency of authority. Without them, you are invisible. This is the dominant assumption in the industry — and for the vast majority of competitive queries, it still has merit.
But the assumption is wrong in more cases than most practitioners acknowledge. And understanding exactly when and why it is wrong reveals something important about how Google’s ranking systems actually work in 2026 — specifically, how entity recognition and co-occurrence signals can substitute for link authority in ways that most SEO content does not explain.
This case study documents a service page for a home services contractor in a mid-sized US market. The page launched with zero backlinks, on a domain with a Domain Authority of 24, competing against established local businesses with backlink profiles of between 40 and 80 referring domains. Within 11 weeks it had reached position 4 for its primary keyword. Within 20 weeks it was ranking for 34 page-1 keywords and had earned three Google AI Overview citations. No links were built to the page at any point.
The mechanism was entity SEO: building a page that Google could confidently resolve as a clear, specific entity — with defined attributes, verifiable co-occurrence patterns, and structured data that mapped every relevant relationship to the Knowledge Graph. This document explains exactly what was built and why it worked.
KEY OUTCOMES AT 20 WEEKS
- Primary keyword position: 4 (zero backlinks to page)
- Total page-1 keywords: 34 (targeting 1 primary + entity co-occurrence doing the rest)
- Google AI Overview citations: 3 confirmed local service queries
- Referring domains to the page: 0 (throughout entire 20-week period)
- Domain Authority: 24 (competitors: 40–80 DA range)
- Time to page-1: 11 weeks
- Featured snippet: 1 captured (cost-related query) Google Business Profile impressions: +44% (entity corroboration effect)
2. What Entity SEO Actually Means in Practice

2.1 From Keywords to Entities
Google’s search system has been transitioning from string matching to entity understanding for over a decade — since the Knowledge Graph launched in 2012. But the practical implications for page-level SEO work only became compelling for smaller sites in 2025 and 2026, when two developments converged: the June 2025 Knowledge Graph clarity cleanup, and the proliferation of AI Overviews as a citation-based visibility layer alongside traditional rankings.
An entity, in Google’s framework, is anything that can be distinctly identified and understood: a person, a place, a business, a service type, a concept, a product. What makes entity SEO different from keyword SEO is not just vocabulary — it is the goal. Keyword SEO asks: how do I get this page to appear for this phrase? Entity SEO asks: how do I help Google understand exactly what this page is, what it covers, who provides it, where, and how it relates to everything adjacent to it?
The difference in framing produces completely different content and markup decisions. A keyword-optimised service page repeats the target phrase in the title, H1, body, and meta description. An entity-optimised service page defines the service as an entity with attributes, connects it to the geographic entity it serves, names the business entity providing it, links those entities to external authoritative sources, and maps every relevant co-occurrence through structured data and content depth.
2.2 How Google Resolves Entity Confidence
Google resolves entity confidence through three signals operating simultaneously. Understanding all three is essential because they are not interchangeable — each does something the others cannot.
| Signal | What It Does | How It Is Built |
| Structured data (schema markup) | Explicitly declares entities and their relationships in machine-readable format. Gives Google the highest-confidence signal available at page level. | JSON-LD: Service, LocalBusiness, FAQPage, Organization, sameAs properties linking to external authority sources. |
| Co-occurrence patterns | The entities, concepts, and terms that appear consistently alongside your primary entity in your content. When Google sees ‘HVAC repair’ consistently appearing with ‘refrigerant’, ‘heat exchanger’, ‘SEER rating’, ‘EPA 608’, it builds a confident entity model for the service. | Content depth: covering all attributes, related concepts, process terminology, geographic specifics, cost ranges, and regulatory context. |
| Corroborating mentions | Off-page signals that confirm the entity exists and has the attributes claimed. Does not require backlinks. Unlinked brand mentions, directory citations, review platform presence, and NAP consistency all contribute. | GBP optimization, directory consistency, review signals, and NAP uniformity across the web. |
THE INSIGHT THAT CHANGED HOW I APPROACH SERVICE PAGES
Brand mentions correlate with AI Overview citation frequency at r = 0.664.
Traditional backlinks correlate at r = 0.218.
Entity signals are three times more predictive of AI visibility than link signals.
For local service pages — where the entity is a specific business providing a specific service in a specific location — building entity confidence through structured data and co-occurrence can outperform a modest backlink profile entirely.
This does not mean backlinks are irrelevant. It means for local service pages on domains with DA 20–35, entity SEO is the higher-leverage investment.

3. The Client and the Service Page
3.1 Client Context
The client is a home services contractor operating in a mid-sized metropolitan market in the southern United States. The business offers HVAC, plumbing, and electrical services. The specific page documented here is an HVAC repair service page targeting the primary local market.
The domain had been live for two years with eight static service pages, no blog, no structured data, and no active link building. Domain Authority was 24. The three primary competitor service pages ranking for the target keyword had Domain Authorities of 41, 67, and 58 respectively, with referring domain counts ranging from 40 to 210. On a traditional link-based analysis, this page had no business ranking above position 15 at best.
| Metric | Status at Page Launch |
| Domain Authority | 24 |
| Referring domains to target page | 0 |
| Referring domains to domain | 14 (mostly directory citations) |
| Existing structured data | None |
| Google Business Profile | Claimed, partially optimised |
| NAP consistency across directories | Partial — 2 address variants |
| Primary competitor DA range | 41–67 |
| Primary competitor referring domains | 40–210 |
| Target keyword monthly search volume | 880 (local market) |
| Target keyword difficulty (Ahrefs) | 22 |
3.2 The Conventional Advice and Why I Ignored It
The standard advice for a DA 24 site competing against DA 40 to 67 sites would be: build links first, then optimise the page. Secure three to five referring domains pointing to the service page and then expect to compete. This is reasonable advice. It is also advice that takes three to six months to execute and costs money.
The decision to attempt entity SEO first — before any link building — was partly strategic and partly diagnostic. If entity SEO alone could get the page to position 4 on a keyword with difficulty 22, the link building budget could be redirected. If it could not, we would have a clear baseline for what link building was actually purchasing. The experiment delivered a clearer answer than expected.
4. The Entity SEO Framework Applied to the Service Page
The framework was applied across four layers simultaneously. Each layer addressed a different aspect of entity confidence. No single layer would have been sufficient alone — the result came from all four operating together.

4.1 Layer 1: Entity Definition (Structured Data)
The structured data layer was the foundation. Before a word of content was written, the JSON-LD schema architecture was planned. Every entity relevant to this service page was identified and a schema type was assigned to it.
| Entity | Schema Type and Key Properties Deployed |
| The business (contractor) | LocalBusiness + HomeAndConstructionBusiness. Properties: name, address, telephone, areaServed (all target zip codes), openingHoursSpecification, aggregateRating, sameAs (GBP URL, Yelp, BBB, Facebook) |
| The service (HVAC repair) | Service. Properties: name, description, serviceType, provider (linked to LocalBusiness entity), areaServed, offers (price range), hasOfferCatalog |
| Service sub-types | Nested Service entities: AC repair, furnace repair, heat pump service, refrigerant recharge, HVAC diagnostic. Each with its own description and typical cost range. |
| The location entity | Place. Properties: name (city), geo (lat/long), containedInPlace (county and state entities). Links the service entity to the geographic entity explicitly. |
| FAQs | FAQPage with 10 Question/Answer pairs covering cost, process, timeline, warranty, and licensing. Self-contained answers written for AI extraction. |
| The organisation | Organization. Properties: name, url, logo, contactPoint, sameAs (linking to all directory profiles, LinkedIn, GBP). The entity home. |
The sameAs properties across both LocalBusiness and Organization schema were critical. By explicitly linking the business entity to its GBP URL, Yelp profile, BBB listing, and Facebook page, the schema told Google: this entity is corroborated at these external sources. Check them. This is the structured data equivalent of a reference list — it gives Google the verification trail it needs to resolve entity confidence without relying on backlinks to do the same job.

4.2 Layer 2: Co-occurrence Architecture (Content Depth)
Co-occurrence is the mechanism by which content depth becomes an entity signal. When a page consistently uses the terminology, concepts, processes, and sub-entities that legitimately co-occur with the primary entity in expert discourse on the subject, Google’s NLP systems build a high-confidence entity model for that page.
For an HVAC repair service page, the primary entity is ‘HVAC repair in [city]’. The co-occurrence web that a genuine expert in this service would naturally produce includes:
- Process entities: diagnostic inspection, refrigerant recovery, leak testing, capacitor replacement, heat exchanger inspection, blower motor testing, thermostat calibration, ductwork assessment
- Technical standard entities: EPA 608 certification, SEER2 rating, ENERGY STAR, refrigerant types (R-410A, R-454B), NATE certification, ACCA Manual J
- Cost and timeline entities: diagnostic fee, repair cost ranges by component type, typical service call duration, parts availability, warranty periods
- Geographic entities: the city name, county name, neighbouring service areas, local permit office references, state contractor licensing board
- Related service entities: HVAC maintenance, AC installation, furnace replacement, heat pump installation — each mentioned as adjacent services with brief descriptions and internal links
- Problem/solution pairs: AC not cooling, furnace not heating, unusual noise from unit, high energy bills, ice on AC unit — real diagnostic scenarios described from first-hand service experience
Each of these co-occurrence terms appeared naturally in the content — not forced, not stuffed. The writing frame was: what would a certified HVAC technician with ten years of field experience write if they were explaining this service to a homeowner who wanted to understand what they were paying for? The result was a 2,800-word service page that read like genuine expert explanation rather than keyword-optimised marketing copy.
Running the completed page through Google’s Cloud Natural Language API confirmed the entity recognition: the primary entity ‘HVAC repair service’ had a salience score of 0.84 (high centrality), and 23 secondary entities were identified with mid-to-high salience — all of them legitimate co-occurrence terms from the service domain.
4.3 Layer 3: Entity Home and Corroboration
The business’s entity home — the About page — was rebuilt from scratch. The previous version was two paragraphs of generic copy with no structured data and no external verification links. The new version established the business entity clearly: trading name, years in operation, service area, licenses held (including license numbers), certifications, and the named founder with a brief professional background.
Organization schema was deployed on the About page with the @id property pointing to the canonical domain URL — establishing the About page as the authoritative entity home. Every sameAs URL was verified to be live and consistent with the NAP information on the service page.
The NAP consistency audit found two address variants across 47 directory listings. Both were corrected to a single canonical format before the service page was published. Entity corroboration requires consistency — a search engine encountering three different address formats for the same business entity has lower confidence in the entity than one that finds the same information everywhere it looks.
4.4 Layer 4: Internal Entity Linking
Internal links were used not just for navigation but as entity relationship signals. Each internal link from the service page to adjacent service pages used anchor text that named the linked entity explicitly — not ‘click here’ or ‘read more’ but ‘our AC installation service’ or ‘HVAC maintenance plans for Dallas homeowners’.
The homepage linked to the service page with the anchor text ‘HVAC repair in [city]’ — the primary entity query. The About page linked to the service page with the anchor text ‘HVAC repair and home services’. Three cluster articles (covering HVAC maintenance tips, signs your AC needs repair, and HVAC cost guide) each linked to the service page from within their body text with contextually relevant anchor text.
This internal link network gave Google a consistent entity signal from multiple pages on the same domain, all pointing to the same conclusion: this page is the authoritative entity for HVAC repair in this location.
5. The Service Page Content Architecture
The page structure was built to maximise both entity salience and extraction readiness for AI systems. Every structural decision had a specific entity or co-occurrence purpose.
| Page Section | Entity / Co-occurrence Purpose |
| H1: HVAC Repair in [City]: Certified Service, Same-Day Response | Primary entity + geographic entity + service attribute (certified) + commercial differentiator (same-day) |
| Opening 60 words: direct answer to ‘what does HVAC repair cost in [city]?’ | Answer capsule for AI extraction. Cost entity established immediately. Geographic entity repeated. |
| H2: What our HVAC repair service covers | Service entity breadth: all sub-service entities listed and briefly described (capacitor, refrigerant, motors, thermostats, ducts) |
| H2: How our HVAC diagnostic process works | Process entity co-occurrence: step-by-step with technical terminology. Establishes expertise entity. |
| H2: HVAC repair costs in [City]: what to expect | Cost entity with specific ranges by repair type. Data table. High AI citation signal. |
| H2: Our certifications and licensing | Trust entity: EPA 608, NATE, state license number, insurance details. E-E-A-T + entity verification. |
| H2: Areas we serve in [County] | Geographic sub-entity expansion: all zip codes and neighbourhoods in the service area named explicitly. |
| H2: HVAC repair vs replacement: how to decide | Related entity coverage. Prevents query leakage to competitor pages on replacement queries. |
| FAQ section (10 questions) | PAA-sourced questions covering cost, process, timing, warranty, refrigerant types. FAQPage schema. |
| Closing CTA with trust signals | Review count, average rating, years in business. Aggregate trust entity for conversion. |
THE CO-OCCURRENCE PRINCIPLE IN PLAIN TERMS
Google does not just read your page. It extracts entities from it and asks: do these entities co-occur in the way they would if this page were written by a genuine expert?
‘HVAC repair’ written by a genuine technician naturally includes: refrigerant types, EPA certification, diagnostic process, specific component names, cost ranges by part, local permit context, and warranty terms.
‘HVAC repair’ written to rank for a keyword includes: the phrase ‘HVAC repair’ repeated 15 times, a list of services, and a call to action. Google can distinguish these. The co-occurrence pattern in expert content is rich, specific, and internally consistent. The co-occurrence pattern in keyword content is thin, generic, and does not map to a coherent entity model.
6. Results of Entity SEO

6.1 Ranking Timeline
| Period | Ranking and Visibility Data |
| Week 1–2 post-publication | Page indexed within 3 days. No visible rankings. Expected. |
| Week 3–4 | Positions 28–34 for primary keyword. Entity recognition beginning. |
| Week 5–6 | Positions 14–18. First FAQ-related queries appear in GSC impressions. |
| Week 7–8 | Position 9–11. First co-occurrence keyword rankings appear (refrigerant recharge, AC diagnostic cost). |
| Week 9–10 | Position 6–8. AI Overview citation confirmed for ‘HVAC repair cost [city]’ query. |
| Week 11 | Position 4 for primary keyword. 0 backlinks. DA still 24. |
| Week 14 | Position 3–4 (fluctuating). Second AI Overview citation confirmed. |
| Week 18 | Featured snippet captured: ‘how much does HVAC repair cost in [city]’. |
| Week 20 | 34 page-1 keywords. 3 AI Overview citations. Position 4 stable. 0 backlinks. |
6.2 The Co-occurrence Keyword Effect
The 34 page-1 keywords the page ranked for by week 20 were not all explicitly targeted. Fourteen of them were co-occurrence keywords — terms that appeared in the content as part of genuine expert coverage but were never the primary optimisation target. These included:
- ‘AC refrigerant recharge cost [city]’ — position 3
- ‘HVAC capacitor replacement near me’ — position 5
- ‘heat pump repair [city]’ — position 6
- ‘EPA 608 certified HVAC [city]’ — position 2
- ‘HVAC diagnostic fee [city]’ — position 4
- ’emergency HVAC repair [city]’ — position 7
None of these terms appeared in the page’s title, H1, or meta description. They ranked because the entity model Google had built for the page included them as high-salience co-occurrence terms. This is the compounding dividend of entity SEO that keyword SEO cannot replicate: one well-built entity page produces rankings across its entire semantic neighbourhood, not just for its explicitly targeted terms.
6.3 AI Overview Citations
Three Google AI Overview citations were confirmed by week 20:
- ‘HVAC repair cost [city]’: The cost data table and the opening cost answer capsule were cited. The structured cost ranges by component type were the specific extracted element.
- ‘how long does HVAC repair take’: The process section’s timeline information — 1 to 3 hours for most repairs, same-day for common faults — was cited verbatim in the Overview.
- ‘what is included in an HVAC diagnostic’: The diagnostic process H2 section was cited. The step-by-step format with named technical checks was the extraction signal.
All three citations came from sections of the page that were built specifically for entity co-occurrence depth and AI extraction readiness — not for keyword optimisation. The cost table, the process steps, and the diagnostic checklist are all structured, specific, and directly answerable content units. They are exactly the content format that Google’s AI systems extract from.
6.4 Business Impact
| Business Metric | Pre vs Post (20 Weeks) |
| Monthly phone calls from organic | 4 → 19 per month |
| Monthly form submissions | 1 → 7 per month |
| Google Business Profile views | +44% |
| GBP calls from profile | +31% |
| Branded search volume | +22% (AI brand recall effect) |
| Backlinks built to page | 0 throughout |
7. Key Lessons
Lesson 1: Entity confidence can substitute for link authority at the local level
This case study does not argue that backlinks are irrelevant. For high-difficulty national queries, they are still essential. What it demonstrates is that for local service pages on keywords with difficulty below 30, entity confidence built through structured data, content depth, and co-occurrence architecture can outperform a modest competitor backlink profile. The mechanism is entity recognition — Google’s ability to confidently resolve what the page is, who provides it, and how it relates to the surrounding entity landscape.
Lesson 2: Co-occurrence is the engine of semantic keyword coverage
Writing content as a genuine expert writes about a subject — using the full vocabulary of the domain, covering process, cost, regulation, technology, and geography — naturally produces co-occurrence patterns that rank for dozens of keywords the page was never explicitly targeting. Fourteen of this page’s 34 page-1 rankings came from co-occurrence terms. No keyword research identified them in advance. They emerged from entity-rich content doing what entity-rich content does.
Lesson 3: The sameAs property is the most underused schema element in local SEO
The sameAs property in LocalBusiness and Organization schema explicitly tells Google where to find corroborating evidence for the entity. Every GBP URL, Yelp profile, BBB listing, and Facebook page linked via sameAs becomes a verification source that strengthens entity confidence without a single backlink. Most local service sites deploy LocalBusiness schema without sameAs properties — and leave the most powerful entity verification signal on the table.
Lesson 4: AI Overview citations come from structured, specific, extractable content
All three AI Overview citations this page earned came from structured content sections: a cost table, a process list, and a diagnostic checklist. Not from the most keyword-optimised sections. Not from the longest paragraphs. From the most specific, self-contained, directly answerable content units on the page. The principle holds across every case study in this series: if you want AI citations, write in units that AI can extract and present standalone.
Lesson 5: The Google Natural Language API is the best entity audit tool available
Running the completed page through Google’s Cloud Natural Language API before publishing is one of the most valuable quality checks in entity SEO. It shows you exactly which entities Google extracts from your content, what salience score each carries, and whether the primary entity has the centrality it needs. A service page where the primary entity has a salience score below 0.6 has a content architecture problem that no backlink will fix. Fix the content first.
Lesson 6: NAP consistency is entity verification infrastructure
Two address variants across 47 directory listings created entity ambiguity that suppressed confidence before the page launched. Fixing NAP consistency is not just a local SEO housekeeping task — it is entity infrastructure work. Every inconsistency is a piece of contradictory evidence that reduces Google’s confidence in the entity. Entity confidence requires consistency across every source the search engine can verify.
8. How to Apply Entity SEO to a Service Page

Step 1: Define the entity architecture before writing
- Identify every entity relevant to the page: the business, the service, the service sub-types, the geographic area, and the provider
- Assign a schema type to each entity and list the key properties you will populate
- Plan the sameAs URLs: GBP, Yelp, BBB, Facebook, LinkedIn, industry directories
- Identify the Entity Home (About page) and confirm Organization schema will be deployed there
Step 2: Build the co-occurrence content map
- List every legitimate co-occurrence term for the primary service entity: process terminology, technical standards, component names, cost variables, regulatory context, geographic sub-entities
- Organise them into content sections: process, cost, credentials, service area, FAQ
- Write from the perspective of a genuine domain expert — not from a keyword brief
- Run the draft through Google’s Cloud Natural Language API and verify primary entity salience above 0.7
Step 3: Deploy the schema stack
- Service schema with all properties: name, description, provider, areaServed, offers, serviceType
- LocalBusiness schema with sameAs, areaServed (all zip codes), openingHoursSpecification, aggregateRating
- FAQPage schema on all FAQ sections with self-contained Question and Answer pairs
- Organization schema on the About page with @id, sameAs, and knowsAbout properties
- Validate all schema in Google’s Rich Results Test before publishing
Step 4: Establish entity corroboration
- Audit NAP consistency across all directories — correct all variants to a single canonical format
- Verify GBP is fully optimised: services listed, photos current, Q&A populated, posting cadence active
- Confirm the business is listed on all relevant industry-specific directories for the service type
- Run a branded search for the business name and verify the GBP panel appears with correct information
Step 5: Build the internal entity link network
- Link from the homepage to the service page with the primary entity query as anchor text
- Link from the About page to the service page with a service-entity anchor
- Link from all related cluster articles to the service page with contextually relevant anchors
- Link from the service page to adjacent service pages with explicit entity anchor text
- Verify no internal links use generic anchors — every link should name the entity it points to










