Dispensaries

Why is my dispensary website not bringing in customers?

Most dispensary websites cannot be found because their menu is inside an iframe, which means the products live on the menu vendor’s domain rather than yours — so your own inventory produces no searchable pages, no product photos in image results, and nothing for an AI assistant to quote. Add an age gate that blocks crawlers and a product catalogue with no photographs, and the site is invisible on the exact searches that convert best: a strain name plus a city.

The short version

  • An iframed menu means your inventory is not your content. Nothing you stock can be searched for by name.
  • Cannabis is locked out of Google and Meta ads, which makes search and AI visibility the main channel, not a nice-to-have.
  • Online orders are worth more: Flowhub’s POS data puts online AOV at $68.01 against $50.56 walk-in.
  • Over 80% of cannabis ecommerce traffic is mobile. The menu experience on a phone is the whole experience.

How to do it

  1. Find out whether your menu is really on your site

    Search a product you carry plus your city. If your own site does not appear — and the menu vendor’s does — your inventory is working as marketing for the vendor, not for you.

  2. Get the catalogue onto your own domain

    Pull the menu from the POS through an API and render real pages at your own URLs, one per product or category. The vendor widget can stay for checkout; what has to change is where the readable content lives.

  3. Let crawlers past the age gate

    An age gate that hides all content behind JavaScript until a click means crawlers and assistants see a blank page. Show the page and overlay the gate, rather than withholding the page until the gate is cleared.

  4. Photograph what you actually sell

    Not the brand’s stock render — the jar on your counter. Original photography is what earns image results, what makes a menu feel real, and what a national brand asset can never do for you specifically.

  5. Build the pages that answer questions, not just list products

    What a strain is good for, what the difference between two product types is, what first-time buyers should expect. These are asked constantly and answered almost nowhere by an actual dispensary.

  6. Own the customer relationship

    Loyalty signup, SMS with consent, and order history under your control. Flowhub’s data has loyalty members spending 3.5× more per year and visiting 40% more often.

The iframe problem, explained properly

Almost every dispensary site embeds its menu from a third-party platform. It is the fastest way to get a working, compliant, POS-synced menu online, and for checkout it is a completely reasonable choice.

The cost is structural. Content inside an iframe is a separate document served from the vendor’s domain. Google has said it may sometimes associate iframed content with the containing page, but it is not a guarantee, and in practice these menus rarely produce indexed pages on the dispensary’s own site. There is no URL of yours for a product, nothing for a search result to point at, and no text on your page for an assistant to quote.

So the dispensary with 1,400 products in the POS has, from a search engine’s point of view, a homepage and a contact page. Every competitor in the state has the same widget, which means every menu looks identical to a machine and nobody can differentiate.

Why this hurts cannabis more than any other retail

A shoe shop with a weak website can buy its way out with Google Ads. A dispensary cannot. Google prohibits cannabis advertising, Meta restricts it heavily, and the marketplaces that will take your money are auctions against the shops nearest you.

That leaves organic search, maps, AI answers and owned channels as the entire viable set. Every one of those depends on having readable content on your own domain — which is exactly what the iframe removes.

It also explains the marketplace dependency. Agencies who manage these accounts report typical dispensary spend on listing platforms of $500 to $5,000 a month, higher in competitive metros. That is rent on an audience you never get to keep, and it is the direct consequence of not having a findable site of your own.

The searches you are losing

The high-intent cannabis search is not "dispensary near me" — that one goes to the map pack and you are competing on proximity and reviews. It is the specific one: a strain name, a brand, a product format, plus a place.

Someone searching a specific strain plus a city knows what they want and is choosing where to get it. That is the closest thing to a ready customer that exists, and it can only be won by a page that names the product and the place in readable text.

If your products live in an iframe, you cannot compete for any of those searches. Neither can most of your competitors, which is the opportunity — this is one of the few remaining retail categories where basic technical correctness is still a differentiator.

The age gate quietly makes it worse

Age verification is a compliance requirement and it is not optional. How it is implemented is.

The common pattern renders nothing until the visitor clicks through. A crawler does not click. It receives an empty page, and every page on the site looks identical and empty — which is indistinguishable from a site with no content.

The fix does not weaken compliance: render the page content in the HTML and place the gate over it as an overlay that blocks interaction until confirmed. The human experience is unchanged. The machine gets a readable page. Check yours by fetching the page the way a crawler does and reading what comes back.

Photography is the cheapest advantage available

Most dispensary menus show the brand’s supplied product render, which means the identical image appears on every menu in the state. It is not yours, it does not compete in image search, and it makes a menu feel like a catalogue rather than a shop.

Shooting your own product is a phone, a light box and an afternoon a week. It produces images that can rank, that make your menu look different from every competitor, and that can be reused across social and email.

It is also the single most common gap we find. On dispensary audits we regularly see catalogues where the overwhelming majority of products have never been photographed by the shop that sells them.

Iframed menu versus a menu on your own domain
Iframed vendor menuMenu rendered on your site
Where the product content livesVendor’s domainYours
Searchable product pagesNone on your siteOne per product or category
Image searchVendor or brand assetYour photography
What an AI assistant can quoteNothing from the menuYour products, prices and descriptions
DifferentiationIdentical to every competitorYours alone
Checkout and complianceHandledKeep the vendor for this part

This is not an argument for dropping your menu platform. Keep it for cart, compliance and POS sync — and stop letting it be the only place your inventory exists.

Common questions

Does an iframe actually hurt SEO?
The iframe element itself is not a penalty. The problem is ownership of the content: what is inside it is a document on someone else’s domain, so it does not reliably become indexable content on yours. The practical result is that a shop with a thousand products has nothing product-related to rank with.
Can I keep Dutchie or my current menu provider?
Yes, and for checkout and compliance you probably should. The change is to pull the catalogue data onto your own site as real pages and let the vendor handle the cart. You keep POS sync and compliance, and you stop being invisible for everything you stock.
Is it worth advertising on cannabis marketplaces?
They do reach people who have never heard of you, which your own site cannot do — so it is a fair channel, not a scam. Treat it as paid acquisition with a known cost, and make sure every customer it sends becomes someone you can contact directly afterwards. Otherwise you are renting the same audience back every month.
How do I get my dispensary mentioned by ChatGPT?
The same way anyone does, with one extra step. Readable pages on your own domain, answer-first content, and consistent listings across Google, Yelp, Foursquare, Apple and Facebook. The extra step is the age gate: confirm it is not serving an empty page to crawlers, because in this industry that is the most common single cause of total invisibility.

Where these numbers come from

Online average order value $68.01 versus $50.56 walk-in; online carts 3.9 items versus 2.7; loyalty members spend 3.5× more per year and visit 40% more often; roughly 25% of dispensary sales now happen online.
— Flowhub POS data (sample size not disclosed by the publisher)
More than 80% of cannabis ecommerce traffic is mobile.
— CED Commerce, via Swell
Typical dispensary spend on listing marketplaces of $500–$5,000 per month, higher in competitive metros.
— Reported by agencies managing those accounts; the platforms publish no rate card

Last reviewed .

Read next

Want this done for your business?

Tell us where you are trying to get to. If the honest answer is that you do not need us, we will say so.

Get in touchText me now