Original research · 100 Los Angeles businesses · July 2026

What local service websites make easy—or hard—to verify.

We froze 100 business-owned domains across ten Los Angeles service categories, collected technical search and crawler evidence, and manually reviewed a deterministic 20-site sample for entity clarity, proof, and source quality.

Disclosure: Spec Social produced this study and sells SEO and marketing services in Los Angeles. The sample does not rank businesses or prove that any signal caused traffic, leads, or revenue. Three unavailable automated observations remain unknown—not failures.

Technical findings

The basics were common. Entity-specific markup was not.

Percentages below use known observations only. The public CSV retains all 100 frozen rows and marks unavailable evidence as unknown.

45.3%

Recognized local-business schema

43 of 95 observed sites used LocalBusiness or a relevant, more-specific subtype. 52 did not.

83.2%

Canonical declaration present

79 of 95 observed sites declared a canonical. 16 did not expose one in the collected HTML.

82.1%

H1 detected

78 of 95 observed sites exposed an H1. A missing H1 is not an automatic ranking penalty, but it removes a direct page-topic signal.

94.8%

Discoverable sitemap resolved

91 of 96 known sitemap checks resolved. Unknowns remain outside the denominator.

97.9%

Phone, contact, or booking action

93 of 95 observed sites exposed at least one detectable conversion path. This test does not prove the form or call flow converted.

100%

OAI-SearchBot allowed by robots.txt

96 of 96 known robots checks allowed OpenAI's search crawler. Permission is only an access condition—not a promise of indexing, citation, or recommendation.

All technical signals

Pass, fail, and unknown stay separate.

SignalPassFailUnknownRate of known
Homepage resolves with HTTP 2xx/3xx952397.9%
Canonical declaration present7916583.2%
Title present9505100%
H1 present7817582.1%
Search crawling allowed by robots.txt9604100%
OAI-SearchBot allowed by robots.txt9604100%
Discoverable sitemap resolves915494.8%
Los Angeles or LA County appears in readable text905594.7%
LocalBusiness or recognized subtype schema detected4352545.3%
Phone, contact, or booking action detected932597.9%
At least 200 readable words detected887592.6%

Need the trade-specific cut? The Los Angeles contractor SEO benchmark publishes all 40 construction, HVAC, roofing, and glazing/security rows with separate category comparisons.

Seeded manual QA

Public proof was thinner than crawlability.

Two domains per category were selected with a fixed SHA-256 seed before review. Scores mean missing, partial, clear, or unknown. They measure whether evidence was publicly checkable, not whether the business delivered good work.

4 of 19

Clear sourced review evidence

9 were missing, 6 were partial, and one sampled site remained unknown.

1 of 19

Clear dates, methods, and limitations

11 of the 19 known manual reviews lacked this evidence; 7 were partial.

8 of 19

Clear named people or authorship

11 were only partial. Search visibility is not the same as making the responsible people easy to verify.

8 of 19

Clear checkable work or first-hand proof

2 were missing and 9 were partial. The review records presence and checkability, not business results.

Why no single 40-point leaderboard appears

The frozen 40-point rubric is published for transparency, but no 40-point score is reported for all 100 sites. The automated 100-site technical observations and seeded 20-site manual QA are reported as separate evidence sets because manual checks were not completed for all 100 sites. Publishing a partial score as if it covered every domain would be more dramatic and less true.

Category cuts

Ten rows per category, without pretending ten is a census.

Each cell shows passes over known observations. Small category counts are descriptive only; they are not reliable industry rankings.

CategoryObservedCanonicalH1SitemapLocal schemaAction
Accounting9/106/99/99/92/99/9
Construction/remodeling10/1010/1010/1010/105/1010/10
Dental10/108/108/109/106/1010/10
Glazing/security10/107/96/99/103/99/9
Home services10/105/109/108/93/1010/10
HVAC10/1010/1010/1010/105/1010/10
Legal10/108/98/98/105/98/9
Med spa/aesthetics10/1010/106/1010/107/1010/10
Professional services8/107/82/88/82/87/8
Roofing10/108/1010/1010/105/1010/10

What it means

Access is common. Verifiable evidence is the harder layer.

Nearly every known robots file allowed both traditional search crawling and OAI-SearchBot. That is useful, but it means crawler permission alone is not a differentiator in this sample. A site still needs pages worth retrieving, accurate business facts, independent corroboration, and evidence a reader can inspect.

The manual sample exposed the more defensible opportunity: sourced reviews, dated methods, named operators, and checkable work were much less consistently clear than phone numbers or service-area copy. That is why Spec's own ranking plan prioritizes client-approved cases and independent reviews instead of adding another pile of generic city pages.

Google's AI guidance says pages shown as supporting links still need to be indexed and eligible for a normal snippet. OpenAI similarly separates search-crawler access from model training controls. Neither source offers a special schema shortcut that guarantees an AI answer.

Method and integrity

Frozen sample, reproducible fields, explicit unknowns.

Sample selection

One non-brand query was frozen for each of ten categories. The first ten unique, eligible business-owned domains were retained in visible order. Directories, duplicate domains, closed businesses, and sites without a verifiable Los Angeles relationship were excluded.

Automated collection

The collector recorded final URL, HTTP status, canonical, title, H1, readable words, JSON-LD types, conversion links, robots results, and sitemap checks. Network failures were retried and preserved as unknown rather than converted to zeros.

Schema correction

An early classifier counted only literal LocalBusiness and ProfessionalService types. Before publication, the captured JSON-LD was reclassified to include relevant more-specific types such as Dentist, LegalService, HVACBusiness, Plumber, GeneralContractor, and MedicalClinic. The validated result is 43 of 97—not the rejected early count.

Corrections and versions

The dataset is a dated observation, not a permanent grade. Send a business name, field, and public evidence URL to hello@specsocial.com. Verified corrections will be documented in a new version.

Questions

Read the limits before using the numbers.

Does this benchmark rank the best Los Angeles businesses?

No. The sample captures business-owned domains found through ten frozen non-brand discovery queries. It measures public website signals, not business quality, customer satisfaction, search position, traffic, leads, or revenue.

Why were only 97 sites included in technical percentages?

The frozen sample still contains 100 sites. Automated collection produced 97 technical observations. Three unavailable automated observations were rechecked separately, but the fallback could not reproduce every automated test, so all three remain unknown and are excluded from technical denominators.

Does allowing OAI-SearchBot make a site appear in ChatGPT?

No. A robots.txt allowance only removes one access barrier. It does not guarantee that OpenAI crawls, indexes, cites, ranks, or recommends the site. Source usefulness, indexability, entity clarity, corroboration, and the user's query still matter.

Is LocalBusiness schema required to rank locally?

No. This benchmark reports whether a recognized local-business type appeared in captured JSON-LD. Accurate structured data can help systems understand business details, but it cannot replace visible facts, a legitimate local presence, strong pages, reviews, links, or customer usefulness.

Why is the 20-site manual review reported separately?

The original protocol described a 40-point rubric, but manual checks were completed only for a deterministic two-site sample per category. Rather than presenting incomplete scores for all 100 sites, the report separates 100-site automated observations from the seeded 20-site manual evidence review.

Can a business request a correction?

Yes. Email hello@specsocial.com with the business name, affected field, public evidence URL, and requested correction. Verified corrections will be versioned rather than silently changing the historical snapshot.

Use the benchmark

Find the evidence gap on your own site.

Start with the free technical audit, then compare the output against the public benchmark. It checks access and page evidence—it does not invent a ranking forecast.