Dispensary local SEO playbook · Spoke 7

Local schema for dispensaries

Structured data is the easiest thing in local SEO to sell and the easiest to get wrong, because almost nobody selling it reads the documentation and almost nobody buying it can check. It is also, for a dispensary, a place where the standard advice runs into a wall that does not exist for other retailers: schema.org has no cannabis business type.

This page is what Google's documentation actually says, read on August 31, 2026, plus one thing we checked ourselves because no documentation answers it.

The short version: two properties are required, not twenty. There is no dispensary type, so use Store. The rating property most sites use is scoped to review sites and not to you. Markup earns rich-result eligibility on Search. It does not move the Map Pack and Google says it is not needed for AI.

The type that does not exist

Google's instruction is clear enough: "Define each local business location as a LocalBusiness type. Use the most specific LocalBusiness sub-type possible; for example, Restaurant, DaySpa, HealthClub, and so on."

So what is the most specific sub-type for a cannabis retailer? We went and counted. On August 31, 2026, schema.org/Store lists 29 sub-types:

AutoPartsStore, BikeStore, BookStore, ClothingStore, ComputerStore, ConvenienceStore, DepartmentStore, ElectronicsStore, FurnitureStore, GardenStore, GroceryStore, HardwareStore, HobbyShop, HomeGoodsStore, JewelryStore, LiquorStore, MensClothingStore, MobilePhoneStore, MovieRentalStore, MusicStore, OfficeEquipmentStore, OutletStore, PawnShop, PetStore, ShoeStore, SportingGoodsStore, TireShop, ToyStore, WholesaleStore.

Nothing cannabis-related. A text search of that page for cannabis, marijuana, dispensary and weed returns nothing at all.

That leaves three options and only one good one.

One more trap: if you are reaching for additionalType to bolt on a cannabis descriptor, Google says explicitly that it is not supported. Multiple types go in an array instead.

Two required properties, not twenty

Schema is usually sold as complexity. Google's requirement is two properties:

That is the whole required list. Everything else is recommended, which means it may improve the result but its absence does not make you ineligible. The recommended properties actually worth adding for a dispensary are the boring ones: openingHoursSpecification, telephone, url, and geo coordinates.

On coordinates, Google sets a specific bar that hand-written markup routinely misses: latitude and longitude "must be at least 5 decimal places" of precision. Rounding to three will not do.

Google also notes that LocalBusiness is a sub-type of Organization and recommends following the Organization fields as well, which is the tidy way to connect a store's markup to the parent company that owns it.

The rating property almost everyone misuses

This is the most commonly broken rule in local schema, and Google states the scope in a single sentence attached to the property itself:

aggregateRating: This property is only recommended for sites that capture reviews about other local businesses.

Google Search Central, Local business (LocalBusiness) structured data

Read that again, because it is the opposite of how the property is normally used. Google scopes aggregateRating to sites that collect reviews about other businesses, which describes directories and review platforms. A dispensary publishing its own star average, in its own markup, on its own website, is not the case Google is describing.

And this is not a costless experiment. The guidelines section of the same page carries a warning: "If your site violates one or more of these guidelines, then Google may issue a manual action against it."

If a plugin or an agency has put a five-star aggregateRating into your dispensary's markup, that is worth looking at this week. It is the single most likely thing on your site to be outside Google's documented use, and manual actions are considerably more expensive than the rich result was ever going to be worth.

A small one that catches dispensaries specifically, because the industry borrowed a restaurant word. Google's menu property is documented as: "For food establishments, the fully-qualified URL of the menu."

Your product list is not a food menu, and the property is scoped to food establishments. It looks like an exact match and it is not one.

If you run a medical counter and a recreational floor under one roof, the property that genuinely fits is department, and Google gives the naming convention: store name plus department name, "for example, gMart and gMart Pharmacy," unless the department is separately branded, in which case its own brand name stands alone.

What markup actually does, and what it does not

Being precise here matters, because schema gets sold with two claims Google does not make.

What Google documents: LocalBusiness markup lets you tell Google about business hours, departments, and other details, and required properties make content "eligible for display as a rich result," typically a knowledge panel with business details on Google Search.

What Google does not say: that markup affects Map Pack position. The local ranking documentation names relevance, distance and prominence, and never mentions structured data. Those are different surfaces, and the Business Profile, not your markup, is what the Map Pack draws on. The Map Pack guide covers what does move that block.

What Google explicitly denies: that markup is an AI visibility tactic. Its guidance on generative AI search lists overfocusing on structured data among the things you can ignore, saying structured data "isn't required for generative AI search, and there's no special schema.org markup you need to add," while recommending you keep it for rich-result eligibility. Keep your schema. Do not buy it as an AI play.

Note also the word Google chose: eligible. Required properties make you eligible for a rich result. They do not guarantee one, and Google maintains a whole troubleshooting guide for cases where a rich result does not appear. We have not run a controlled test on dispensary pages, so we are not going to promise you a rich result either.

The interesting open question

Here is the one we genuinely cannot answer, and it is the most useful thing on this page for anyone thinking carefully.

Google states that it compiles Business Profiles from several sources, the first being "publicly-available information, such as crawled web content (e.g., information from a business' official website)." Structured data on your own site is plainly crawled web content, and it is the most machine-readable statement of your name, address, hours and phone that exists anywhere.

So it is reasonable to suspect that clean LocalBusiness markup helps Google confirm your details, which matters a great deal given that Google may update your profile from outside sources and may refuse your own corrections when it cannot confirm them.

Reasonable to suspect. Not documented. Google never connects the two, and we are not going to pretend the inference is a citation. We mention it because it is a sensible reason to keep your markup accurate even while conceding that markup does not rank you, and because you should be able to see where our reasoning stops and our evidence ends.

What Google does not publish

The working checklist

  1. Check your type. Store or LocalBusiness. Not Pharmacy. Not an invented cannabis type. Not additionalType.
  2. Confirm name and address exist and that the address matches the one on your Business Profile and your signage exactly.
  3. Audit for aggregateRating. If your own star rating is marked up on your own site, that is outside Google's documented use and carries manual-action risk.
  4. Remove the menu property if it points at your product list. It is scoped to food establishments.
  5. Fix coordinate precision to at least five decimal places.
  6. Put each location's markup on that location's page, and use department for a medical counter inside a recreational store.
  7. Validate it, then judge it by rich-result eligibility rather than by rankings, because rankings are not what it is for.

Frequently asked questions

What schema type should a dispensary use?

Store, or LocalBusiness if you prefer to stay general. Google asks you to use the most specific LocalBusiness sub-type possible, but there is no cannabis sub-type to use. We enumerated schema.org/Store on August 31, 2026 and found 29 sub-types, from AutoPartsStore to WholesaleStore, with nothing cannabis-related among them. LiquorStore is the closest regulated-goods analogue and a dispensary is not a liquor store. Pharmacy exists and is the wrong answer for a recreational dispensary, because it is inaccurate and it pulls a retail store into health territory it should stay out of.

What properties does Google actually require?

Two. Google's required properties for LocalBusiness are name and address, where address is a PostalAddress. Everything else on the long lists sold as mandatory is recommended rather than required. Recommended properties that are genuinely useful for a dispensary include openingHoursSpecification, geo coordinates, telephone and url. Google does note that coordinates must carry at least five decimal places of precision, which hand-written markup often gets wrong.

Can I mark up my dispensary's star rating?

Almost certainly not the way you have been told. Google scopes the aggregateRating property with an explicit note: it is only recommended for sites that capture reviews about other local businesses. That describes directories and review platforms, not a store publishing its own rating on its own website. Google also warns that violating the structured data guidelines can earn a manual action against your site, so marking up a rating outside the documented use case is not a free bet.

Should I use the menu property for my dispensary menu?

No. It reads like an exact match, and it is not. Google's documentation scopes the menu property to food establishments: it is the fully-qualified URL of the menu for a restaurant or similar. A cannabis product list is not what the property describes, however naturally the industry uses the word menu for it.

Does schema markup help a dispensary rank in the Map Pack?

Google never claims it does. The local ranking documentation names relevance, distance and prominence and does not mention structured data at all. The structured data documentation talks about knowledge panels and rich-result eligibility on Google Search, which is a different surface from the Map Pack. Markup is worth having for what it is documented to do. It is not a Map Pack tactic and anyone selling it as one is going beyond what Google says.

Does schema help my dispensary appear in AI answers?

Google says the opposite of the common pitch. Its guidance on optimizing for generative AI search lists overfocusing on structured data among the things you do not need to do: structured data is not required for generative AI search, and there is no special schema.org markup to add for it. Google still recommends keeping structured data, because it helps with eligibility for rich results on Google Search. Keep it for that reason, not for AI.

Where should the markup go on a multi-location dispensary site?

On each location's own page. Google says you can add LocalBusiness structured data to any page on your site, though it makes more sense on a page that contains information about your business, and that you should define each local business location as a LocalBusiness type. If you run a medical counter and a recreational floor under one roof, Google's department property covers that, with the naming format store name plus department name.

Will markup guarantee a rich result?

No, and Google's wording is careful about this. Required properties make your content eligible for display as a rich result. Eligible is not the same as guaranteed, and Google maintains a separate troubleshooting guide listing reasons a rich result may not appear. We have not run a controlled test on dispensary pages, so we are not going to promise you one.

Guillermo Bravo
Guillermo Bravo
Founder & CEO of Nearfront. In SEO since 2007. Founded Foottraffik, the first cannabis-focused SEO company, and exited in 2021. Hosts the SEO Rockstars podcast.

Want your markup checked against Google's actual requirements?

We will run the same audit on your store that we run on ourselves, count your reviews and ratings against the stores currently holding the Map Pack in your trade area, and check your request process against the rules above.

Get Ranked Free