Schema Markup
Schema markup is structured data added to your website's code that helps search engines understand your content and display rich results in search.
Your website has two audiences. There’s the human visitor who reads your text, looks at your photos, and decides whether to call you. Then there’s the machine — Google, Bing, ChatGPT, Siri — that needs to understand what your business actually is before it can recommend you to anyone.
Schema markup is how you talk to the second audience. It’s structured data embedded in your website’s code that tells search engines and AI exactly what your content means — not just what it says.
What it does
Schema markup uses a standardised vocabulary (from schema.org) to label your content in a way machines can parse precisely. Instead of hoping Google figures out that “Smith & Co” is a business, that “9am–5pm” are your hours, and that “4.8 stars” is your rating, you explicitly define each piece of information in a structured format they already understand.
It’s invisible to your visitors. There’s nothing on the page that changes. But behind the scenes, your website is having a detailed conversation with every search engine and AI system that reads it.
The secret language in your code
Here’s what it actually looks like. When a human visits a local plumber’s website, they see a nicely designed page with the business name, address, phone number, and hours. But in the code, the search engine sees something like this:
{
"@context": "https://schema.org",
"@type": "Plumber",
"name": "Murray's Plumbing",
"address": {
"@type": "PostalAddress",
"streetAddress": "14 Creek Road",
"addressLocality": "Ballarat",
"addressRegion": "VIC",
"postalCode": "3350"
},
"telephone": "+61 3 5331 0000",
"openingHoursSpecification": [
{
"dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
"opens": "07:00",
"closes": "17:00"
}
],
"areaServed": {
"@type": "City",
"name": "Ballarat"
},
"priceRange": "$$"
}
That’s not for humans to read. It’s a direct, unambiguous message to Google: this is a plumber, in Ballarat, open weekdays 7 to 5, serving the local area. No guessing required.
What different businesses get from schema
The type of schema you need depends entirely on what kind of business you run. There are hundreds of schema types, and the right combination tells search engines and AI exactly how to categorise, display, and recommend your business.
Local businesses and trades
A cafe, a mechanic, a physiotherapy clinic — any business with a physical location people visit. Schema tells search engines your exact address, hours, phone number, and what category you fall into. This is what powers the Google Maps panel and the “near me” results.
{
"@type": "Dentist",
"name": "Bright Smiles Dental",
"image": "https://example.com/clinic.jpg",
"address": { ... },
"geo": {
"@type": "GeoCoordinates",
"latitude": -37.8136,
"longitude": 144.9631
},
"openingHoursSpecification": [ ... ],
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.9",
"reviewCount": "127"
}
}
Google sees: dentist, Melbourne, 4.9 stars from 127 reviews, open these hours, here’s a photo. That’s a rich result waiting to happen.
Service businesses
Consultants, agencies, trades that come to you — businesses that serve an area rather than operate from a shopfront. Schema lets you define your service area, list specific services, and connect them to relevant search queries.
{
"@type": "ProfessionalService",
"name": "Clearline Engineering",
"serviceType": ["QA/QC Systems", "HSE Compliance", "ISO Audit Support"],
"areaServed": [
{ "@type": "State", "name": "Western Australia" },
{ "@type": "State", "name": "Northern Territory" }
],
"knowsAbout": ["ISO 9001", "ISO 45001", "NATA accreditation"]
}
When someone searches “ISO audit support Perth,” Google doesn’t have to guess whether your site is relevant — you’ve told it explicitly.
Retail and e-commerce
Products with prices, availability, ratings, and shipping details. Product schema is what creates those rich shopping results with star ratings and prices right in the search listing.
{
"@type": "Product",
"name": "Wool Blend Camp Blanket",
"image": "https://example.com/blanket.jpg",
"brand": { "@type": "Brand", "name": "Southern Made" },
"offers": {
"@type": "Offer",
"price": "89.00",
"priceCurrency": "AUD",
"availability": "https://schema.org/InStock",
"shippingDetails": {
"@type": "OfferShippingDetails",
"deliveryTime": {
"@type": "ShippingDeliveryTime",
"handlingTime": { "minValue": 1, "maxValue": 2, "unitCode": "d" },
"transitTime": { "minValue": 3, "maxValue": 7, "unitCode": "d" }
}
}
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.7",
"reviewCount": "43"
}
}
A searcher sees: the product name, $89, in stock, 4.7 stars from 43 reviews — before they even click. That’s the kind of listing that wins clicks over a plain blue link.
Restaurants and hospitality
Menus, cuisines, reservations, and dietary options. Schema lets you surface the information diners actually search for.
{
"@type": "Restaurant",
"name": "Paper Lantern",
"servesCuisine": ["Vietnamese", "Southeast Asian"],
"menu": "https://paperlantern.com.au/menu",
"acceptsReservations": true,
"hasMenu": {
"@type": "Menu",
"hasMenuSection": [
{
"@type": "MenuSection",
"name": "Mains",
"hasMenuItem": [
{
"@type": "MenuItem",
"name": "Pho Bo",
"description": "12-hour beef bone broth, rare beef, rice noodles",
"offers": { "@type": "Offer", "price": "22.00", "priceCurrency": "AUD" },
"suitableForDiet": "https://schema.org/GlutenFreeDiet"
}
]
}
]
}
}
Someone searching “gluten free Vietnamese Melbourne” — your restaurant shows up with the specific dish that matches, along with the price. That’s not magic, it’s schema.
Events, courses, and workshops
Date, time, location, ticket price, availability. Event schema creates those rich calendar-style results in search.
{
"@type": "Event",
"name": "Small Business Website Workshop",
"startDate": "2026-05-15T09:00:00+10:00",
"endDate": "2026-05-15T12:00:00+10:00",
"location": {
"@type": "Place",
"name": "CoWork Geelong",
"address": { "@type": "PostalAddress", "addressLocality": "Geelong" }
},
"offers": {
"@type": "Offer",
"price": "0",
"priceCurrency": "AUD",
"availability": "https://schema.org/InStock"
},
"organizer": {
"@type": "Organization",
"name": "The Internet",
"url": "https://theinternet.com.au"
}
}
FAQ pages
Question-and-answer pairs that can appear directly in search results as expandable dropdowns — taking up significant visual real estate on the results page.
{
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "How long does it take to build a website?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Most projects take 4–8 weeks from first conversation to launch, depending on scope and content readiness."
}
}
]
}
Why it matters more than ever
Schema has always been important for Google. But with the rise of AI-powered search — Google’s AI Overviews, ChatGPT browsing, Perplexity, and others — structured data is becoming even more critical. These AI systems don’t just scan your text for keywords; they look for structured, machine-readable information they can trust and cite.
When an AI tool answers “Who does ISO compliance consulting in WA?” it’s far more likely to reference a business that has explicitly declared its services, service area, and expertise in schema markup than one that simply mentions those things in a paragraph somewhere.
Schema is how you make your business legible to machines. And increasingly, machines are the ones deciding who gets recommended.
What happens without it
Your site still appears in search results, but as a plain listing — a blue link with a title and a two-line description. You’re competing for attention against sites that display star ratings, business details, pricing, hours, and structured information at a glance. It’s the difference between a classified ad and a shopfront.
Schema markup is invisible to your visitors but transformative for how search engines and AI systems present your business.
Your digital presence should work as hard as you do.
Website, email, listings, branding — let's get it all working together for your business.