Schema markup
Cannabis Schema Markup Optimization

Audit the graph
A tag on its own is not an entity
Work out where the graph breaks on your site
- 01 IfYour storefront does not surface in local results or on the mapLocalBusiness schemaName, address, phone, hours, service area and geo coordinates. The baseline. Every other schema type is built on top of it.
- 02 IfYour products appear in search with no price and no availabilityProduct and Offer schemaName, description, image, price, availability, plus THC and CBD content and terpene profile as additional properties.
- 03 IfYour education pages never take the featured snippetFAQPage schemaFive to eight question and answer pairs per page, answers between 50 and 100 words. Beyond 200 words performance declines.
- 04 IfVoice assistants never read your answers aloudSpeakable and FAQ extractionVoice platforms pull FAQ schema directly for spoken results. Cannabis compliance questions carry consistent voice query volume.
- 05 IfSearch engines describe your brand wrong, or not at allOrganization schemaBrand identity at domain level: logo, contact point, social profiles, founding details. Implement once at root, inherit everywhere.
- 06 IfYour blog and news coverage earns nothing in searchArticle and NewsArticle schemaHeadline, author, publisher, dates and images. Regulatory reporting published first improves Google News eligibility.
What the markup moves
Structured data is measured, not asserted
- 30%
- Higher click-through rate for pages carrying schema markup
- 38%
- Click-through improvement on cannabis product pages with complete Product schema
- 41%
- Share of queries where correct schema moved a page into positions one to three
- 42%
- Share of local cannabis search clicks that land on a result with a rich snippet
- 3.2
- Average ranking positions gained at 95 percent name, address and phone consistency
- 31%
- Click-through lift from aggregate rating schema on product entries
Against plain text listings in Google results
Price, availability, rating, image and brand all marked
Within 60 to 90 days of implementation
Against 31 percent across non cannabis industries
Measured within 30 days
Review generation is part of the schema stack, not separate from it
Validation
Invalid markup is worse than none
Shipping schema without validating it wastes the build and can confuse the parsers you were trying to instruct. Every deployment passes the Rich Results Test for eligibility, the Schema Markup Validator for syntax, and Search Console for what production actually does with it.
The failures repeat: required fields left empty, prices typed as strings, two LocalBusiness blocks fighting on one page, an Offer nested wrong inside a Product, hours that went stale a season ago, and special characters in a business name breaking the JSON-LD outright.
The full discipline
Every piece of this discipline, in 10 deep dives
- 01Article Schema for CannabisRead the breakdown
- 02Breadcrumb Schema for CannabisRead the breakdown
- 03Business Schema for CannabisRead the breakdown
- 04Event Schema for CannabisRead the breakdown
- 05FAQ Schema for CannabisRead the breakdown
- 06Organization Schema for CannabisRead the breakdown
- 07Price Schema and E-Commerce for CannabisRead the breakdown
- 08Product Schema for CannabisRead the breakdown
- 09Review and Rating Schema for CannabisRead the breakdown
- 10Video Schema for CannabisRead the breakdown

Implementation and upkeep
What the work costs and what keeps it alive
- Single location setup
- 4 to 8 hours
- Ten or more locations
- 40 to 80 hours
- Product availability sync
- Daily
- Search Console review
- Weekly
- Full site schema crawl
- Monthly
- Accuracy audit
- Quarterly
Organization, LocalBusiness, WebSite and BreadcrumbList wired at root and inherited down.
Location specific schema plus the automation that keeps it synchronised with operations.
A sold out strain still marked InStock sends buyers to nothing and damages the listing.
The Enhancements report is where schema degradation shows up before it compounds.
Every page verified against the stack its page type is supposed to carry.
Hours, service area, name and phone consistency, and rating freshness against current business reality.
The difference
The same page, with the stack and without it
| Criteria | Page without schema | Page with a complete stack |
|---|---|---|
| How the listing renders | A plain text listing competing on the title tag alone | Stars, price, hours, steps and question dropdowns rendered inside the result |
| Click-through rate | The baseline every competitor shares | 30 percent higher, and 38 percent on cannabis product pages |
| Voice assistant eligibility | Nothing structured for an assistant to extract | FAQ answers extracted directly for spoken results |
| Shopping panel eligibility | Ineligible. No price, no availability, no seller | Eligible through Product and Offer markup |
| Who controls the interpretation | Google guesses from the words on the page | You do, because you declared what the data means |
| What it costs to keep | Nothing, because there is nothing to maintain | Daily availability sync, weekly review, monthly crawl, quarterly audit |
Start here






