Google business markup
The hidden lines that tell Google your opening hours, your prices and your ratings — so it can show them in the result instead of just a link.
- It all happens here
- Every part runs in your browser. Nothing you type is uploaded, and it works with the internet off.
- No account, ever
- No sign-up, no email address, no trial that turns into a bill.
- Yours to use
- Nothing watermarked, nothing limited to a preview.
What is this page about?
It has to be true. Markup describing things that are not on the page — a rating for reviews you do not have, a price you do not charge — is the fastest route to a manual penalty, and those are much harder to undo than to avoid.
Your business
The $ to $$$$ shorthand, or leave it empty. Google shows it beside your name.
Where you are
When you are open
The part most likely to show up directly in a search result.
Paste this into your page
It goes inside the <head>, or anywhere in the body — search engines read it either way. It is invisible to visitors and changes nothing about how the page looks.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "LocalBusiness",
"address": {
"@type": "PostalAddress"
},
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": "https://schema.org/Monday",
"opens": "09:00",
"closes": "17:00"
},
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": "https://schema.org/Tuesday",
"opens": "09:00",
"closes": "17:00"
},
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": "https://schema.org/Wednesday",
"opens": "09:00",
"closes": "17:00"
},
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": "https://schema.org/Thursday",
"opens": "09:00",
"closes": "17:00"
},
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": "https://schema.org/Friday",
"opens": "09:00",
"closes": "17:00"
},
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": "https://schema.org/Saturday",
"opens": "09:00",
"closes": "17:00"
}
]
}
</script>Then check it
Once the page is live, put its address into Google’s Rich Results Test. It reports what it found and what it would be eligible to show — which is the only way to know this worked, since none of it is visible on the page.
Being eligible is not a promise. A search engine decides what to display and often shows nothing extra at all. Without the markup it cannot show anything.
What this is, if you have never had to think about it
Most people arrive here having been told they need one of these, without being told what it is. Nothing below assumes you already know.
Why some search results have stars and prices and yours does not
Search engines read your page the way a person does — as words on a screen — and words are ambiguous. "Open until 5" could be your opening hours or a sentence in a blog post. Structured data is a separate, invisible block that states it unambiguously: this is a business, these are the hours, this is the address. Given that, a search engine can show the hours in the result rather than hoping you click through to find them.
What it can get you
For a local business: opening hours, address and phone number shown directly in search. For a product: price, availability and star rating under the link. For an article: the author and date. For common questions: the questions themselves, expandable in the result. None of it is guaranteed — a search engine decides what to show — but without the markup it cannot show any of them.
The one rule that gets sites penalised
The markup has to describe what is genuinely on the page and genuinely true. Star ratings for reviews that do not exist, or a price that differs from the one you actually charge, is the fastest route to a manual penalty — and those are much harder to undo than to avoid. Describe what is really there. That is the whole of the compliance story.
Questions people ask

Nobody should be hand-writing this, page by page.
Get Found works it out from what you have already typed. Describe a product or an event once and the markup, the sitemap and the search tags come with it — on every page, kept current, without a second thought.
