Research white paper

Small Business Technical SEO in 2026

What audit flags, homepage coverage, and structured data can tell us about small-business websites.

Your SEO Wizard Research · Reader edition 15 October 2026
Observations collected 6–13 October 2026

Contents and reference tables

This report examines technical SEO signals across selected small-business websites. It distinguishes automated observations from supported findings, explains what homepage-only checks can miss, and separates structured-data syntax from factual accuracy.

Gathering comparable data was challenging across small-business websites with inconsistent structures and technical weaknesses. Access conditions and collection limits also affected coverage. The methods appendix explains the study selection and measurement limits.

The findings at a glance

FindingObserved resultInterpretation
Supported benchmark business union23/100Minimum under limited review; other businesses are not certified clear.
Interior-only supported cases14/96 (14.6%)Same-source paired comparison; not independent replication.
JSON-LD present51/60Initial source only; presence does not certify facts.

Raw flags describe observations

The revised benchmark contains 1,223 retained native pages and 16,391 emitted warning/failure page-check observations. Repeated templates can create many instances. The primary unit in the chart is the business: one or more retained occurrences, not a count of independent page samples.

Selected raw flags in the revised benchmarkFigure 4. Selected raw flag presence among 100 source-assessed businesses. The denominators are assessed businesses, not a fully validated defect denominator. Selected-page coverage varies. Selected raw flags in the revised benchmark 0% 20% 40% 60% 80% 100% Image priority hint missing 87/100 Image dimensions missing 88/100 Head scripts potentially blocking 66/100 LocalBusiness type not detected 65/100 Low source word-count hint 57/100 Meta description missing 53/100 Repeated image-source hint 56/100 Several empty alt attributes 46/100 H1 missing 41/100 Canonical missing 32/100 Image alt attribute missing 35/100 JSON-LD syntax flag 5/100
Figure 4. Selected raw flag presence among 100 source-assessed businesses. The denominators are assessed businesses, not a fully validated defect denominator. Selected-page coverage varies.

The supplement preserves all 168 conditional check IDs across the full cohort and five industry strata. Nonemission is not a verified pass. Identity-encoding compression and transport timing observations are marked separately.

Interpreting markup and performance hints

The examples below use revised 100-business source frequencies. Earlier measurement aggregates remain in the private historical reports.

Missing image width and height attributes were flagged at 88 of 100 source-assessed businesses. These source attributes can help reserve space; rendered reserved space and actual layout shifts were not measured. The leading-image priority flag at 87 of 100 businesses used a guessed image; it did not identify measured Largest Contentful Paint.

Potentially blocking head scripts were flagged at 66 of 100 businesses. Script counts and source placement do not quantify browser execution, total transfer size, or the interaction cost of a particular dependency. No rendered lab runs, field Core Web Vitals, PageSpeed results, or CrUX measurements were collected. web.dev describes reserved image space as one technique for reducing layout shifts; the actual effect in this cohort remains unmeasured. [E3]

ObservationVerification needed before a repair claim
Missing meta descriptionInspect page purpose and emitted metadata; absence does not establish an absent search snippet.
Empty image alt attributeDetermine whether the image conveys information or is decorative.
Missing canonicalReview duplicate relationships and intended preferred URLs.
Noindex on a retained pageDetermine whether the page is intended for indexing.
Low initial HTML word countInspect rendered content and whether a short page fulfills its purpose.
LocalBusiness type not detectedReview applicability entity scope and other markup formats.

Google explains that snippets are commonly derived from page content and may use a meta description when useful. A missing description is an editorial observation; the study did not measure snippet display or a ranking effect. [E2]

The chart and tables preserve native source observations. Context can make an observation acceptable uncertain or inapplicable without changing what was emitted. [R1 R9]

Context review retained uncertainty

Across accepted sources, 3,663 protocol-selected page-check observations have effective context dispositions. This is a sampled review subset of 16,391 raw flags, not a precision test, false-positive rate or defect census.

Context decisions: 3,663 prescribed observationsFigure 5. Effective dispositions in accepted original, recovery, eligible legacy and new replacement layers. Acceptable combined is the historical coding label; it does not certify owner intent. Context decisions: 3,663 prescribed observations 0% 20% 40% 60% 80% 100% Uncertain 2,385 Acceptable combined category 1,008 Not applicable 219 Confirmed native defect 51
Figure 5. Effective dispositions in accepted original, recovery, eligible legacy and new replacement layers. Acceptable combined is the historical coding label; it does not certify owner intent.

Uncertain findings remain uncertain, and unreviewed observations remain unreviewed. The counts below describe this selected review subset, not the accuracy of all audit flags.

Supported findings use a business-level union

Accepted native review supports 51 page-check instances at 11 businesses. Separately, 35 exact broken-reference targets are supported at 14 businesses. The sets overlap; their union is a minimum 23 businesses among 100 assessed.

Supported business counts: overlapping evidence streamsFigure 6. Overlapping evidence streams. Do not add their business counts or combine page-check instances with destination units. Supported business counts: overlapping evidence streams 0 6 12 18 24 Native findings 11/100 Broken references 14/100 Business union 23/100
Figure 6. Overlapping evidence streams. Do not add their business counts or combine page-check instances with destination units.

A missing destination is treated as a supported navigation finding only when the response and retained page context support that interpretation. Script-managed contact utilities require additional browser verification.

This is an observed minimum under bounded, partial ascertainment. It is not national prevalence, a clean verdict on the remainder, or measured lost inquiries.

Concrete controls need exact evidence

Some supported HTTP-link observations exposed a telephone number configured as an HTTP host, or an email control configured as an HTTP address. The useful finding identifies the exact control and destination. It is more actionable than a generic statement that an HTTPS page contains an HTTP link. Before changing a control, verify the intended number or address and the scheme emitted by the template.

One supported retained configuration placed an HTTP POST form action on an HTTPS page. The study did not submit the form, observe transmitted data, or establish live browser handling. Ordinary HTTP navigation and an insecure form action have different implications and were kept distinct.

Malformed intended JSON LD included source with literal formatting artifacts or unsuitable quotation encodings. A page could contain both parseable and malformed blocks. Checking the presence of schema, or validating just one block, would not establish that every script payload parsed.

The document-language cases concerned English initial HTML without a declared document language. W3C technique H57 explains how the HTML language attribute supports assistive technology. These observations were not a complete accessibility assessment or evidence of a search penalty. [E4]

Evidence fieldWhat a reviewable recommendation should retain
SourceExact page URL and acquisition date
ElementAnchor text control name selector or script locator
Destination or declarationResolved URL scheme field or literal payload
InterpretationApplicability and reason intentional behavior is ruled out
Next validationCurrent response rendered behavior or intended business fact

GET-confirmed missing destinations remained uncertain where source context could indicate a JavaScript-managed utility rather than a broken visitor path. No lost leads or user failure rates were measured. [R1]

What the homepage comparison left unseen

The revised same-source comparison has 96 unambiguous homepage/interior pairs. All 96 had additional interior raw check IDs. A minimum 14 had a supported interior-only case or target absent from observed homepage evidence: 14.6%.

What interior pages added to paired source evidenceFigure 7. Raw differences and supported interior-only cases use the same paired business denominator. Additional raw IDs do not imply additional confirmed defects. What interior pages added to paired source evidence 0% 20% 40% 60% 80% 100% Additional raw check IDs 96/96 Supported interior-only case 14/96
Figure 7. Raw differences and supported interior-only cases use the same paired business denominator. Additional raw IDs do not imply additional confirmed defects.

A paired comparison requires an identifiable homepage and at least one accepted interior page. Businesses that did not meet that definition are excluded from this rate, rather than counted as clear.

This is a retrospective analysis of the final accepted benchmark sources. It is related evidence, not an independent replication. The supplement preserves the separately labeled original comparison.

What the schema source study captured

The schema study contains 60 accepted businesses and 752 analyzable initial-source pages. JSON-LD was observed at 51 businesses; none was observed in the retained source of the other nine. Other formats and JavaScript insertion were outside this measurement.

JSON-LD in retained initial sourceFigure 8. JSON-LD presence in retained initial HTML, by accepted business. Source absence does not establish absence across an entire website. JSON-LD in retained initial source Observed 51/60 Not observed 9/60 Accepted businesses; n=60
Figure 8. JSON-LD presence in retained initial HTML, by accepted business. Source absence does not establish absence across an entire website.

The analyzable source combines 749 pages accepted under the original extraction rule with three separately verified offline derivations. Those derivations use facts that were identical across all retained complete captures. The supplement identifies their origin and preserves the original extraction states.

The study measures initial-source evidence. It does not certify rendered visibility, full schema semantics, current business facts or search-feature eligibility.

JSON syntax is a separate evidence layer

The analyzed source contains 1,012 literal JSON-LD block occurrences: 1,001 parse as JSON and 11 do not. These are script occurrences across retained pages, not unique entities or independent businesses.

JSON syntax in the analyzed sourceFigure 9. JSON syntax across the analyzed block occurrences. Repeated templates can contribute multiple occurrences. JSON syntax in the analyzed source Valid JSON 1,001 Invalid JSON 11 Literal script-block occurrences; n=1,012
Figure 9. JSON syntax across the analyzed block occurrences. Repeated templates can contribute multiple occurrences.

Four valid block occurrences come from the separately disclosed offline derivations. Original-rule and derived counts remain distinct in the supplement.

Valid JSON syntax does not establish Schema.org semantic validity, correct entity selection, real-world accuracy, rich-result eligibility or a business outcome.

Source consistency and business-fact accuracy

Two prior same-source inconsistencies remain narrowly supported: different New Hampshire addresses in own-business markup and captured contact content, and 09:00 versus 08:00 opening declarations with corresponding source hours. Neither establishes which fact is correct in the real world.

Structured-data evidence layers remain distinctFigure 10. Evidence layers. Limited same-source corroboration does not certify rendered visibility, externally verified facts or search outcomes. Structured-data evidence layers remain distinct Literal JSON presence and syntax Measured Selected same-source business context Limited source comparison Rendered visibility and entity semantics Not fully measured Real-world facts and search outcomes Not measured
Figure 10. Evidence layers. Limited same-source corroboration does not certify rendered visibility, externally verified facts or search outcomes.
Final source-context categoryBusinesses
Source Corroborated42
Observed Initial Source Inconsistency2
Insufficient Evidence8
Other Entity Or Not Applicable8

Matching names, telephone variants, address scope and schedule scope requires business context. Tracking numbers, mailing addresses, legal-name aliases and shared templates can explain different values. Insufficient evidence remains separate from positive contradiction.

Google requires structured data to represent supported page content and separates technical format from quality/relevance requirements. Rich-result display was not measured. [E1]

Plumbing: complete source coverage, mixed methods

The exploratory plumbing inventory contains 100 businesses and 1,011 eligible initial-source pages. Staffing in the 95-business legacy layer was unverified; the five later qualified additions do not retroactively verify it.

Plumbing source primitives: entry versus any retained pageFigure 11. Five comparable initial-source primitives across retained layers, with explicit entry and any-page denominators. Legacy hybrid selection and new strict organic selection differ; the chart is descriptive, not a causal comparison or repair census. Plumbing source primitives: entry versus any retained page Image dimensions missing 62/95 73/96 Image alt attribute missing 17/95 22/96 Meta description missing 20/100 51/100 H1 missing 16/100 49/100 Canonical missing 9/100 23/100 Entry page Any retained page
Figure 11. Five comparable initial-source primitives across retained layers, with explicit entry and any-page denominators. Legacy hybrid selection and new strict organic selection differ; the chart is descriptive, not a causal comparison or repair census.

The two layers used different page-selection and scoring methods. Shared markup observations use explicit check-specific eligibility. Platform scores and transport performance are reported separately rather than pooled.

The supplement supplies the complete source-primitive tables, raw check counts and review classifications, with the layer definitions needed to interpret them.

Plumbing platforms and QA scores stay separate

Measurement layerBusinesses/pagesMeaning
Legacy exploratory QA95 businesses /965 eligible pagesHybrid selection and adaptive CMS grading.
New strict organic QA5 businesses /46 native pagesNew acquisition/transport; separate strict scores.
Legacy score summaryMeanMedianRange
Entry-page QA92.099474–98
Equal-business page means90.2591.6474–98.6
Page-weighted QA91.069455–99
Strict page-weighted QA90.929455–99

Legacy platform observations were 34 WordPress, 9 Wix, 7 Squarespace and 45 undetected. Undetected does not prove static HTML. New platform observations and QA summaries are supplied independently in the supplement.

The separately collected five-business layer received 141 prescribed context reviews. Review supports seven broken-reference destinations at one of those businesses. Unselected flags remain unreviewed; this is a supported minimum within that layer, not a prevalence estimate.

New mean QA scores are 89.4 for entry pages, 91.02 for equal-business means, 93.02 page-weighted and 93.02 strict page-weighted. Full medians, ranges and separate platform counts appear in the aggregate supplement.

QA scores describe the instrument/rubric. They do not measure rankings, traffic, leads, citations, field/lab Core Web Vitals or comparative platform performance.

A practical evidence led audit workflow

The studies support a practical reporting discipline: retain the exact observation, identify what the evidence establishes, and specify the remaining validation before recommending a change. This is an implication of the observed review boundaries, not a tested intervention or promised improvement in search outcomes.

A proposed workflow: observation to reviewable actionFigure 12. A recommended verification workflow derived from the evidence boundaries. This process was not evaluated as an intervention in the collected studies. A proposed workflow: observation to reviewable action Retain the observation Exact source, date, field, destination and evidence Establish applicability Page role, business entity, intent and acquisition limits Obtain the missing evidence Render, test a response, or verify an intended fact Recommend a scoped change Separate supported repairs from editorial opportunities Validate the change and monitor separately Technical results do not guarantee business outcomes
Figure 12. A recommended verification workflow derived from the evidence boundaries. This process was not evaluated as an intervention in the collected studies.

For a contact control, retain its source page, anchor text, selector, destination, and intended contact value. For structured data, check each block and the relevant business node; compare its fields with page context and the intended branch or schedule. For a suspected broken link, verify the response and inspect whether the control is a usable path rather than a managed utility.

For image and script hints, obtain rendered evidence and suitable repeated measurements before asserting performance impact. For heading and metadata observations, judge whether the proposed edit fits the page purpose. Changes to shared templates should be checked on several affected page types.

An agency report can keep supported repairs, contextual editorial opportunities, and unavailable evidence in separate lists. A stakeholder should be able to see why a recommendation exists and what would change its interpretation. Uncertainty is an actionable reporting state when the next evidence step is explicit.

No owner interventions repairs or follow-up outcome measurements were conducted. [R1-R9]

Limitations and unmeasured outcomes

These studies describe selected business cohorts and bounded retained page samples. Equal industry and region allocation is not population weighting. The seed randomizes ranking within the qualified frame; it does not create a probability sample of U.S. businesses. Any-page observation rates depend on page availability and retained sample size.

Initial HTML can omit JavaScript-inserted information and can contain hidden or inactive text. Rendered visibility, mobile and desktop behavior, semantic handling of every markup format, and real-world business-fact correctness remain unmeasured. Missing text is insufficient evidence, not an automatic contradiction.

Context review used distinct AI actors with source-bound decisions and separate adjudication. Review was limited to selected observations; it does not establish business intent, human expert certification or owner validation.

Mixed-wave coverage combines different dates. The revised homepage comparison reuses accepted benchmark sources, and S11 reuses a subset of the business frame with fresh acquisition. The results cannot be added as independent replications. Repeated pages, template flags, targets, and block occurrences do not create additional independent businesses.

OutcomeEvidence collected in this program
Search indexing or rankingsNone
Traffic leads revenue or lost inquiriesNone
Field or lab Core Web VitalsNone
AI citations or answer inclusionNone
Rich-result display or eligibilityNo complete measurement
Effects of repairs or owner experimentsNo intervention or follow-up

Hashes establish preserved bytes and source bindings; they do not establish the truth of content or current website conditions. Raw evidence remains private and is not part of the aggregate supplement.

The publisher develops the measurement instrument. Distinct AI actors supply separate opinions, but shared model/instrument biases can remain. This is not a commercially independent product comparison or human expert certification.

Research implications and article angles

The completed source inventories support three practical reporting disciplines: inspect interior pages, review the applicability of raw flags, and separate valid JSON syntax from business-context evidence. Accessible matched replacements and mixed dates limit population interpretation.

Third-party article angleEvidence and backlink target
A homepage check can miss interior evidence14/96 supported interior-only cases; cite the paired-comparison section and methods.
An audit flag is not yet a repair recommendationRaw observations versus context decisions; cite definitions and review coverage.
Valid JSON does not certify business factsPresence, parsing and source-context layers; cite schema results and measurement bounds.
Technical SEO patterns in plumbing sourceEntry versus any-page primitives and mixed methods; cite the plumbing section.

Each commissioned article should quote the relevant numerator, denominator, dates and limits, then link to the white paper or exact section as its original research source. Authors retain editorial judgment; the paper supplies evidence, not a promised backlink outcome.

Separate reusable article briefs accompany this draft. No publishers were contacted. Queued/deferred studies and owner experiments contribute no new results.

Sources and research materials

The report tables and figures present aggregate results. The methods appendix explains study membership without assigning findings to individual domains.

ReferenceEvidence layer
R1Benchmark source captures and context review.
R2Additional benchmark source captures and reviewed evidence.
R3Additional eligible benchmark source evidence.
R4Homepage and interior-page comparison mappings.
R5Original schema source captures.
R6Additional schema captures and separately verified offline derivations.
R7Exploratory plumbing source records.
R8Qualification frame, selection criteria and methods.
R9Measurement instrument, rubric and transport definitions.
R11Qualified benchmark additions and source/context review.
R12Separately captured schema source and context review.
R13Qualified plumbing additions and source/context review.

Exact source bindings, raw website bodies, domain inventories, and detailed collection logs remain in the private research record. Captured evidence does not certify current website conditions.

Definitions and external references

Raw flag frequency is businesses with at least one emitted warning/failure divided by source-assessed businesses. Nonemission is not a verified pass. Supported minimum is a union of positively supported business cases under limited ascertainment; it is not exhaustive defect prevalence.

The paired homepage result requires a positively identified homepage and at least one accepted interior page. Schema occurrences repeat across pages; parsing and source consistency use different denominators. Plumbing source primitives have check-specific eligibility and mixed collection methods. Percentages use n/N rounded to one decimal.

E1 Google general structured-data guidelines

E2 Google snippets and meta descriptions

E3 web.dev layout-shift guidance

E4 W3C document-language technique H57

E5 Schema.org AutomotiveBusiness type hierarchy

External guidance supports interpretation and supplies no cohort outcomes. Full collection and review records remain in the private audit trail. The data supplement documents measurement definitions and evidence origins.

Appendix A Revised benchmark raw flags

Table A1. Business-level emitted warning/failure presence. Full cohort n=100; each industry n=20. Table IDs 1–14 of 79 flagged types.

Native check IDAll /100Elec /20HVAC /20Roof /20Auto /20Land /20
IMAGE DIMENSIONS MISSING881818191815
LCP IMAGE PRIORITY MISSING871817171817
FRAME PROTECTION MISSING741316181215
TWITTER IMAGE MISSING721714141413
IMAGE CONTENT BALANCE WARNING71912181418
HEADING ORDER WARNING661414121511
HEAD BLOCKING SCRIPT661116151311
THIRD PARTY SCRIPT COUNT HIGH661311131514
TWITTER DESCRIPTION MISSING66161413914
ANCHOR TEXT GENERIC651511131511
LOCALBUSINESS SCHEMA MISSING65141316148
X CONTENT TYPE OPTIONS MISSING621214141111
MANY FRONTEND ASSETS60813121413
RENDER BLOCKING EXTERNAL CSS58159111211

Raw frequencies are descriptive source observations. Unknown, nonemission, context review and applicability remain separate in the complete CSV. Compression/timing rows must retain request-context labels; no pooled performance claim is supported.

Appendix A Revised benchmark raw flags

Table A2. Business-level emitted warning/failure presence. Full cohort n=100; each industry n=20. Table IDs 15–28 of 79 flagged types.

Native check IDAll /100Elec /20HVAC /20Roof /20Auto /20Land /20
TWITTER TITLE MISSING58141213811
CONTENT THIN57138101313
IMAGE ASSET REPEATED EXCESSIVELY56912111311
H2 MISSING541011111210
HSTS MISSING5311131397
META DESCRIPTION MISSING53121210811
OG IMAGE MISSING511391199
MANY EMPTY ALT4611671012
ANALYTICS EAGER HEAD LOAD42947166
H1 MISSING418105612
OG DESCRIPTION MISSING41129659
ARTICLE AUTHOR CONTEXT MISSING40741577
RESPONSIVE IMAGE HINTS MISSING39115698
UNVERSIONED LOCAL STATIC ASSET3949989

Raw frequencies are descriptive source observations. Unknown, nonemission, context review and applicability remain separate in the complete CSV. Compression/timing rows must retain request-context labels; no pooled performance claim is supported.

Appendix A Revised benchmark raw flags

Table A3. Business-level emitted warning/failure presence. Full cohort n=100; each industry n=20. Table IDs 29–42 of 79 flagged types.

Native check IDAll /100Elec /20HVAC /20Roof /20Auto /20Land /20
MULTIPLE H13695796
IMAGE ALT MISSING3548878
LARGE IMAGE RESPONSIVE HINTS MISSING3539797
JSONLD MISSING3386748
CANONICAL MISSING3275659
RESPONSE TIME SLOW32745115
SECTION HEADINGS OVERLONG3276757
CONTENT VERY THIN3187349
ARTICLE DATE CONTEXT MISSING30511176
INSECURE HTTP LINKS FOUND2955469
CONTENT SECTION TOO DENSE2746575
TWITTER CARD MISSING2784456
CONTENT WALL OF TEXT2526674
QUESTION ANSWERS NOT DIRECT2552882

Raw frequencies are descriptive source observations. Unknown, nonemission, context review and applicability remain separate in the complete CSV. Compression/timing rows must retain request-context labels; no pooled performance claim is supported.

Appendix A Revised benchmark raw flags

Table A4. Business-level emitted warning/failure presence. Full cohort n=100; each industry n=20. Table IDs 43–56 of 79 flagged types.

Native check IDAll /100Elec /20HVAC /20Roof /20Auto /20Land /20
POTENTIAL NON COMPOSITED ANIMATION2436339
RATING REVIEW SCHEMA REVIEW2215772
NOINDEX FOUND2152266
OG URL MISSING2182326
OG TITLE MISSING2083315
OG TYPE MISSING2073424
LCP IMAGE LAZY LOADED1825641
MANY IFRAMES1805526
SCHEMA TYPE LIMITED1623452
TITLE H1 ALIGNMENT WARNING1541334
MIXED CONTENT FOUND1452223
REVIEW SCHEMA REVIEW1103332
LOCALBUSINESS SCHEMA CONTACT INCOMPLETE1032104
BOOTSTRAP JS BUNDLE FOUND913140

Raw frequencies are descriptive source observations. Unknown, nonemission, context review and applicability remain separate in the complete CSV. Compression/timing rows must retain request-context labels; no pooled performance claim is supported.

Appendix A Revised benchmark raw flags

Table A5. Business-level emitted warning/failure presence. Full cohort n=100; each industry n=20. Table IDs 57–70 of 79 flagged types.

Native check IDAll /100Elec /20HVAC /20Roof /20Auto /20Land /20
FAVICON MISSING923103
PHONE NOT DETECTED914112
VIEWPORT INCOMPLETE830122
CONTENT STRUCTURE SPARSE713111
BREADCRUMB SCHEMA MISSING601212
DECORATIVE IMAGE EAGER610113
HTML LANG MISSING613002
SITE IDENTITY SCHEMA MISSING612120
JSONLD INVALID501202
NO INTERNAL LINKS521011
ROBOTS MAX IMAGE PREVIEW MISSING500140
TEXT COMPRESSION NOT DETECTED (new identity requests only)512020
OG IMAGE URL INVALID403001
H1 OVERLONG300102

Raw frequencies are descriptive source observations. Unknown, nonemission, context review and applicability remain separate in the complete CSV. Compression/timing rows must retain request-context labels; no pooled performance claim is supported.

Appendix A Revised benchmark raw flags

Table A6. Business-level emitted warning/failure presence. Full cohort n=100; each industry n=20. Table IDs 71–79 of 79 flagged types.

Native check IDAll /100Elec /20HVAC /20Roof /20Auto /20Land /20
PAGE WEIGHT LARGE300201
URL STRUCTURE WARNING312000
VIEWPORT MISSING302001
CANONICAL URL VARIANT CONFLICT211000
TITLE MISSING211000
CANONICAL CROSS DOMAIN100010
HOWTO SCHEMA DEPRECATED110000
REDIRECT CHAIN101000
TWITTER IMAGE URL INVALID100001

Raw frequencies are descriptive source observations. Unknown, nonemission, context review and applicability remain separate in the complete CSV. Compression/timing rows must retain request-context labels; no pooled performance claim is supported.

Appendix B Historical plumbing metrics

Table B1. Original 95-business exploratory layer: metrics 1–9 of 27. These historical measurements remain unchanged and are not represented as the new strict five-business wave.

ObservationEntry n/NAny-site n/NPages n/N
Title element missing0/950/950/965
Meta description missing18/9548/95221/965
Canonical declaration missing9/9523/9544/965
Canonical host/protocol/declaration conflict2/952/9530/965
Noindex directive observed0/9519/9530/965
HTML language attribute missing1/951/951/965
Viewport meta tag missing1/951/951/965
H1 heading missing14/9546/95176/965
Multiple H1 headings21/9529/95106/965

The supplement contains all 27 historical metrics, new complete raw check tables, five combined source primitives with wave-specific components, and separate QA/platform summaries. Conditional eligibility is not missingness recoded as zero.

Appendix B Historical plumbing metrics

Table B2. Original 95-business exploratory layer: metrics 10–18 of 27. These historical measurements remain unchanged and are not represented as the new strict five-business wave.

ObservationEntry n/NAny-site n/NPages n/N
No H2 headings7/9547/95176/965
Heading levels skip25/9555/95277/965
HTTPS page references HTTP resources/forms13/9313/93114/963
HTTPS page links to HTTP destinations20/9324/93207/963
Image alt attributes missing16/9021/91177/919
Image width/height attributes missing57/9068/91527/919
No responsive image hints on multi-image page29/8741/89369/861
No JSON-LD blocks detected17/9546/95269/965
Invalid JSON-LD syntax reported0/780/790/696

The supplement contains all 27 historical metrics, new complete raw check tables, five combined source primitives with wave-specific components, and separate QA/platform summaries. Conditional eligibility is not missingness recoded as zero.

Appendix B Historical plumbing metrics

Table B3. Original 95-business exploratory layer: metrics 19–27 of 27. These historical measurements remain unchanged and are not represented as the new strict five-business wave.

ObservationEntry n/NAny-site n/NPages n/N
LocalBusiness schema expected but not detected6/3556/7481/267
One HTML transfer exceeded 2 seconds2/9510/9530/965
HTML response exceeded 1.5 MB1/952/954/965
Compression not advertised for HTML over 50 KB1/861/866/881
Head scripts flagged as potentially blocking41/9544/95429/965
More than 60 script/style/inline-style signals40/9546/95382/965
HSTS header absent on HTTPS response32/9332/93350/963
X-Content-Type-Options nosniff absent40/9540/95419/965
Frame protection headers not detected54/9560/95550/965

The supplement contains all 27 historical metrics, new complete raw check tables, five combined source primitives with wave-specific components, and separate QA/platform summaries. Conditional eligibility is not missingness recoded as zero.

Appendix C Evidence, mechanisms and consequences

Evidence orderStatus and prerequisites
First-order observationExact source attribute, malformed literal block or supported referenced GET 404/410. Only directly observed cases are measured.
Second-order mechanismPossible visitor/task or parsing consequence; requires active/usable element and relevant context. Rendering may change interpretation.
Third-order search implicationPossible discovery/indexing/interpretation effect; requires system behavior not measured here. Rankings and AI citations remain distinct.
Fourth-order business outcomePossible changes in inquiries or revenue; requires exposure, user behavior, attribution and competing explanations. No outcome measured.

Alternative explanations and tradeoffs matter. Noindex can protect utility pages; CSS can reserve image space; tracking numbers can coexist with canonical business phones; a managed email utility can rewrite a source link. Removing a dependency or changing a shared template can break existing behavior. These are validation questions, not effects established by this study.

A complete consequence matrix, claim ledger and private source bindings accompany independent review. The aggregate supplement provides source counts, denominators, definitions and figure data; it contains no raw website reproductions.

Appendix D: Study coverage and methods

This appendix summarizes the final study inventories, candidate selection and measurement limits. Detailed collection records are retained in the private audit trail.

Final study coverage

Research componentSource-assessed businessesRetained pages
Cross-industry benchmark100/1001223
Schema initial-source study60/60752
Exploratory plumbing cohort100/1001011

Complete source inventory means an accepted assessment for each business slot. It does not mean an exhaustive crawl, complete rendering, payroll certification, every warning adjudicated, or measured search/business outcomes.

The final inventories contain 100 benchmark businesses, 60 schema assessments and 100 plumbing businesses. The schema and homepage analyses reuse related benchmark businesses, so the study totals are not independent samples.

Final study coverageFigure 1. Final source-assessed business counts by study. The schema cohort overlaps the benchmark; counts should not be added as independent samples. Final study coverage Cross-industry benchmark 100 Schema source study 60 Exploratory plumbing 100 Source-assessed businesses in each study
Figure 1. Final source-assessed business counts by study. The schema cohort overlaps the benchmark; counts should not be added as independent samples.

The websites included in the study

The final inventory represents 200 distinct domains: 100 in the cross-industry benchmark and 100 in the plumbing companion. The 60-domain schema cohort is a subset of the benchmark. The homepage comparison uses 96 eligible pairs from the benchmark inventory.

Related analyses share a business frameFigure 2. Related analyses share a business frame. Separate source captures and repeated pages are not independent business samples. Related analyses share a business frame Revised 100-slot cross-industry frame Benchmark 100 source assessments 1223 native pages Homepage comparison 96 eligible pairs Reuses accepted benchmark scans Schema source study 60 source assessments Fresh captures; related businesses Plumbing remains a separate exploratory cohort
Figure 2. Related analyses share a business frame. Separate source captures and repeated pages are not independent business samples.

The candidate pool was larger than the final audited list. Some candidates could not be assessed within the study rules because of access restrictions, unavailable responses or collection limitations. Qualified alternatives were selected to complete the planned inventories; recoverable retained evidence was handled separately.

The methods appendix describes study membership, candidate selection, and measurement limits.

The lists describe websites represented in bounded initial-HTML assessments. They do not imply an exhaustive audit, endorsement or owner participation.

Business qualification and sampling boundaries

The revised benchmark retains 20 businesses per industry and 25 per Census region. Staffing evidence has 58 reported counts/ranges and 42 corroborated estimates or estimated ranges. These are public-evidence classes, not payroll audits.

Benchmark industry mixFigure 3. Final benchmark allocation: 20 businesses in each of five industries. Regions each contain 25 businesses; this is not population weighting. Benchmark industry mix Electrical contractors 20 HVAC contractors 20 Roofing contractors 20 Auto repair 20 Landscaping 20 Businesses per industry; total n=100
Figure 3. Final benchmark allocation: 20 businesses in each of five industries. Regions each contain 25 businesses; this is not population weighting.

Newly selected businesses were screened for identity, independence, public staffing evidence and collection feasibility before their assessments were accepted. Benchmark eligibility required public evidence consistent with 50 or fewer staff; estimated counts used a conservative 35-person ceiling. Benchmark replacements preserved the planned industry and regional allocation.

This is a selected sample of accessible websites, not a probability sample of U.S. businesses. Public staffing evidence is not payroll certification. The earlier exploratory plumbing cohort retains its separate qualification limitations.

How the websites were assessed

Your SEO Wizard publishes this research and develops SEO Crystal Ball, the measurement instrument. The benchmark used bounded organic discovery of up to 15 successful unique pages per business. Initial-source checks and contextual review are separate evidence layers.

MethodScope
InstrumentSEO Crystal Ball 0.1.14 release candidate 2; rubric 2026.09.14-fetch-timing-v1.
Page selectionPublic initial HTML, organic discovery, bounded page selection and no fixed page-role quotas.
AccessAccess and pacing rules constrained selection and collection; access controls were not bypassed.
Context reviewDistinct AI reviewers assessed selected observations; disagreements received separate adjudication.
UnmeasuredBrowser rendering, lab/field performance, external business facts and business/search outcomes.

Raw observations remain in the supplement with their eligibility and source definitions. Unavailable evidence remains unknown. The review covers a prescribed subset of observations; unreviewed warnings are not classified as false positives.

Transport and collector versions varied between layers. Compression and response-time observations are not pooled as comparable performance measurements.

Candidate selection and collection quality

Screening and acquisition encountered access restrictions, unavailable or incomplete responses, and collector limitations. Candidates that could not produce an acceptable assessment were systematically excluded or replaced with viable, qualified alternatives. Some collection interruptions were resolved using retained source evidence.

StepHow the final inventory was formed
Screen candidatesCheck the applicable business, identity and staffing criteria.
Check feasibilityRespect access policies and the study collection bounds.
Select alternativesUse qualified replacements; preserve benchmark industry and region targets.
Accept evidenceRequire usable source records and the applicable source/context review.

The final list shows only the domains included in the accepted study inventories. Detailed candidate decisions, unsuccessful attempts and recovery records are retained in the private audit trail.

Replacement and recovery affect which evidence is available. Findings apply to this selected inventory and do not measure improvement caused by a website change.

Cite this report

Your SEO Wizard Research. (2026, October 15). Small Business Technical SEO in 2026. https://yourseowizard.com/education/small-business-technical-seo-2026/

Link to this report or a specific section when citing a finding. Keep its observation dates, denominator, and measurement limits with the quoted result.

Research enquiries: info@yourseowizard.com. See Ian Garcia-Theriault's background and our guide to publishing first-party data.