Here is something most dispensary owners have never checked. Ask three different AI assistants where to buy cannabis in your city, and you will often get three different behaviors from the same question: one gives a real list, one gives a legal disclaimer and a general suggestion to search locally, and one declines to answer.
That inconsistency is not a bug you can complain your way out of. It is the environment, and it changes what optimization means in this category more than anything else does.
Most guides to answer engine optimization assume the machine wants to answer and just needs help picking who to name. In regulated categories the machine is often reluctant to answer at all, which means half the work is making yourself the safe, obvious, well-documented choice for the moments when it does answer.
The refusal gap is the whole opportunity

Run the experiment properly before you spend a dollar. Take ten questions a real customer would ask, put each one into ChatGPT, Perplexity, Gemini and Claude, and record what comes back. Do it from a phone on cellular rather than your store wifi so location signals behave normally.
You will find the responses sort into three buckets. Some questions get a confident answer naming specific businesses. Some get a hedged answer that describes how to find a dispensary without naming one. Some get declined.
The hedged and declined buckets are where the money is, and here is why. When an assistant refuses, nobody wins. When an assistant hedges, it usually falls back to naming a platform (Leafly, Weedmaps, a Google Maps search) rather than a store. When an assistant answers directly, it names two or three businesses and the rest of the market is invisible.
So there are two separate jobs. The first is getting named in the questions that already produce direct answers, which is conventional AEO work. The second is understanding which questions are locked and not wasting budget on them.
This is the part almost every agency selling AEO for cannabis dispensaries gets wrong. They promise visibility across the board, run the same playbook they run for dentists, and bill for movement on queries that were never going to produce a recommendation.
Three kinds of questions, three different answers
Sort every query you care about into one of three types, because each behaves differently.
Legality and process questions are the friendliest. Whether recreational sales are legal in your state, what ID you need, what the purchase limits are, whether you can pay by card, what medical versus recreational means for a buyer. Assistants answer these readily because the information is factual and public. They are also the questions with the highest volume and the lowest competition, and they are where a dispensary can win a citation with a single well-built page.
Location and logistics questions are mixed. Which dispensaries are open now, which are near a neighborhood, which have parking or delivery. Sometimes answered with named businesses, sometimes deflected to a directory. These are worth real effort because the intent is transactional.
Product and effect questions are the hardest and the least worth chasing. Which strain for sleep, how much to take, what will help with a specific symptom. Assistants hedge or refuse most of these, and attempting to optimize for them pushes you toward writing exactly the health-adjacent content that creates regulatory exposure. Leave these alone.
Most dispensaries have their content weighted almost entirely toward the third category, because that is what their menu software generates. The weighting should be the reverse.
Your menu is invisible, and your pages are the fix

Almost every dispensary site runs its menu through an embedded widget from a platform like Dutchie or a similar provider. That widget loads its contents after the page does, from a different domain, in a format built for human browsing.
The practical consequence is that your inventory is largely invisible to the systems building AI answers. Whatever is inside that iframe is not reliably part of what a model sees when it reads your site.
That is fine, because your menu was never going to be the thing that got you cited. What matters is the surrounding text, and most dispensary sites have almost none of it.
Build real pages for the questions in the first two categories. A page on what to bring on a first visit. A page on the difference between medical and recreational purchasing in your state, with the actual limits. A page on payment methods, which is a genuine source of confusion given banking constraints. A page on delivery zones if you deliver. A page on your hours that states them in text, not only in a graphic or a booking widget.
Write these as direct answers. Question as the heading, answer in the first two sentences, detail after. The structure matters because an assistant extracting an answer wants a self-contained passage, not a paragraph that only makes sense after three others.
This is unglamorous work and it is the foundation of AEO for cannabis dispensaries, because these pages are the only content in the category that assistants are comfortable repeating.
Make the machine sure you exist
Models struggle with entity resolution, which is the problem of deciding whether two mentions of a name refer to the same thing. In a category full of similar names, multiple locations, license numbers and frequent rebrands, that problem gets worse.
Fix it deliberately. Use exactly one version of your business name everywhere, including the suffix. Use one address format. Use one phone number. Put LocalBusiness or Store schema on your site with your name, address, phone, hours, and a sameAs list linking to your Google Business Profile, your Leafly and Weedmaps pages, your social accounts and any press coverage.
The sameAs list is the part most operators skip and the part that does the most work. It is an explicit statement that all these scattered profiles are one business, which is precisely the inference a model has to make before it can name you with confidence.
Then audit for contradictions. An old address on a directory, a former phone number on a review site, a defunct location page still live on your own domain. Every contradiction is a reason for a model to hedge, and hedging is how you end up unnamed.
Reviews are training data now
Dispensary owners read reviews as customer service. They are also one of the largest bodies of text about your business that any system will ever encounter, and they carry disproportionate weight in what a model concludes about you.
Two things follow. Volume matters, because a handful of reviews cannot establish a pattern and a few hundred can. And the language matters, because models summarize themes rather than averaging stars. Fifty reviews mentioning long waits produce an answer that mentions long waits, regardless of your rating.
Read your last hundred reviews and tag the recurring nouns. Whatever appears most is what an assistant will say about you. If the recurring noun is “budtender” and the sentiment is positive, you have an asset. If it is “parking” and the sentiment is negative, you have a description problem that no amount of schema will fix.
Respond in text that adds information rather than gratitude. A reply that says thank you contributes nothing. A reply that says the parking situation changed in March and there are now twelve spaces behind the building adds a fact that gets read.
Third-party sources beat your own site
This is the hardest thing for operators to accept. When a model decides which dispensaries to name, your website is one of the weakest inputs, because every business claims to be good on its own site and models discount self-description accordingly.
What carries weight is what other sources say. Local news coverage. Trade publications. Review platforms. Directory listings with complete data. City and licensing records. Community forum threads.
That is why press and AEO are the same project rather than two budgets. A business journal piece naming your dispensary in a story about local retail taxes is worth more to your AI visibility than a dozen blog posts on your own domain, because it is independent, it is crawled, and it attaches your name to a context a model can reuse.
The categories where this matters most are the ones where self-published content is least trusted, and regulated retail sits at the top of that list.
The compliance line that keeps you citable
There is a version of this work that backfires. If you optimize toward product and effect questions, you end up publishing content that reads as medical claims, and three bad things happen at once: you create regulatory exposure, you give assistants a reason to treat your site as an unreliable source, and you attract traffic that cannot convert.
Hold a clear line. Publish facts about law, process, logistics and your own operation. Do not publish claims about what a product does to a body. Do not publish dosing guidance. Do not publish anything that would embarrass you in front of a regulator.
This is not only caution. Systems that assemble answers apply extra scrutiny to health-adjacent claims, and a site carrying them is more likely to be discounted as a source across the board, including on the neutral questions you could have won.
The restraint is the strategy.
A ninety-day order of operations
Weeks one and two, run the query audit and record what each assistant says today. Without that baseline you cannot prove anything later.
Weeks three and four, fix entity clarity. One name, one address, one phone, schema with a complete sameAs list, and every contradictory listing corrected or claimed.
Weeks five through eight, build the question pages. Start with legality, ID requirements, purchase limits, payment and first-visit expectations. Six to ten pages, each answering one question in the first two sentences.
Weeks nine through twelve, work on third-party presence. Complete your Leafly and Weedmaps profiles properly, pursue one local business or trade story on a tax, zoning or employment angle, and start building review volume with a consistent ask at the counter.
Then re-run the same query audit and compare. Expect movement on the legality and logistics questions first, expect the product questions to stay closed, and expect the whole thing to take longer than any other retail category because the sources are thinner and the models are cautious.
That is the shape of the work. Identify which questions can be won, build plain pages that answer them, make your identity unambiguous, earn independent sources that name you, and stay off the topics that make a model distrust you.