Search
Describe your business in a language search engines read
Your page has no structured data, so search engines have to guess what your business is, where it is, and what it does.
Why it matters
Structured data is a small block of information that states your name, address, phone number, and opening hours in a format machines understand rather than infer. It is what enables the richer search results: star ratings, opening hours, and knowledge panels beside your listing.
How you would notice it
- Your Google listing shows no opening hours or ratings even though you have them recorded elsewhere.
- Search engines show a generic description rather than your business details.
What to do
We added structured data to our own site from the same shared head as everything else. Two notes from that pass.
Stage 1
- Copy this block and paste it into the head section of your homepage. Replace every value with your own.
The punctuation matters. JSON uses double quotes throughout and commas between entries, with no comma after the last one.
One block, identical on all 32 pages
Our JSON-LD block is written once and emitted on every page from the shared head, so all 32 pages carry identical markup, and a check asserts the blocks stay identical as the site grows. Hand-writing a variant per page is how the details drift: one copy keeps an old phone number and search engines then read two versions of your business. Write it once and let every page reuse it.
Source: Site-wide schema identity check across our built pages
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "LocalBusiness",
"name": "Clearwater Plumbing",
"telephone": "+1-559-555-0134",
"address": {
"@type": "PostalAddress",
"streetAddress": "1200 Fulton St",
"addressLocality": "Fresno",
"addressRegion": "CA",
"postalCode": "93721",
"addressCountry": "US"
},
"url": "https://www.example.com/",
"openingHours": "Mo-Fr 08:00-17:00"
}
</script>Stage 2
- Repeat the block on other pages where it makes sense, changing the type to match the page. An article page uses Article; a frequently asked questions page uses FAQPage.
- Validate the block before you publish.
Paste your page URL into that validator. It reports anything malformed, which is far easier than hunting for a missing comma by eye.
Structured data is data, not script
Adding 32 of these blocks to our site changed nothing about what we allow to run: the script audit still counted one distinct executable fingerprint before and after, because the blocks are classified as non-executable data. That matters under a strict script policy, where every executable block needs its own exemption, and each exemption is a thing you must maintain. Structured data should never force a script exemption; if your tooling asks for one, the tooling is wrong, not the policy.
Source: Inline script hash audit after our structured data change
https://validator.schema.org/How to check it worked
Confirm it worked
Paste your page address into the validator and confirm it reports zero errors and recognises your business name and address. Re-run the Siege Test and confirm the Structured data check turns green.