Most cannabis shoppers arrive on a phone, and Google scores your site on its mobile experience. Hit the Core Web Vitals thresholds — LCP at or under 2.5 seconds, INP at or under 200 milliseconds, CLS at or under 0.1 — and you have handled speed for shoppers and rankings at once. Oversized images are the usual culprit.
Get real numbers before you change anything
Run your homepage, your menu page, and your top category through PageSpeed Insights. It is free, it tests mobile by default, and once your site has enough traffic it shows field data from real Chrome users rather than lab guesses.
Three numbers matter. LCP (Largest Contentful Paint) should be 2.5 seconds or less. That is how long the biggest visible element takes to render. INP (Interaction to Next Paint) should be 200 milliseconds or less, which covers how quickly the page reacts to taps. CLS (Cumulative Layout Shift) should stay at 0.1 or below, so nothing jumps around while a shopper is reaching for a button.
Write your scores down. Every fix below should move one of them.
Images are almost always the problem
Dispensary sites are image-heavy by nature: strain photos, product shots, hero banners, brand logos. When a page is slow, image weight is the first place to look.
- Resize to display size. A 2400-pixel photo squeezed into a 350-pixel product card makes every phone download pixels it will never show.
- Convert to WebP. Supported by every current browser, and the same photo usually comes out substantially smaller than a JPEG or PNG.
- Compress. Product shots do not need print quality. Most images survive heavy compression with no visible change on a phone screen.
Lazy load everything below the fold
Adding loading="lazy" to an image tag tells the browser to skip it until the shopper scrolls near it. On a 60-product menu page, that means the phone loads eight images on arrival instead of sixty. One exception: never lazy load your hero image or whatever the LCP element is, because delaying it delays the exact thing Google times.
Watch fonts and third-party scripts
Custom web fonts block text from rendering while they download. A system font stack costs zero bytes and renders instantly; if the brand will not allow that, load one family in two weights and stop.
Then count your scripts. Chat widget, review embed, heat-mapping tool, the age gate, two analytics tags. Each one is work a mid-range Android phone does before the menu becomes usable. Remove anything nobody actually checks.
A worked example
Say your menu page weighs 4.6 MB and PageSpeed Insights reports a 6-second LCP. A typical breakdown: 3.8 MB of images, a hero banner exported as a 2000-pixel PNG, two custom font families, five third-party scripts.
The fix list writes itself. Export the hero at 800 pixels as WebP and it drops from over a megabyte to well under 100 KB. Batch-convert the product grid the same way. Lazy load everything below the first row. Cut one font family and the two scripts nobody uses. None of that requires a redesign, and pages cleaned up this way routinely land under the 2.5-second LCP mark.
Key takeaways
- Test with PageSpeed Insights first: LCP at or under 2.5s, INP at or under 200ms, CLS at or under 0.1.
- Image weight causes most slow cannabis pages. Resize, convert to WebP, compress.
- Lazy load below-the-fold images, but never the hero.
- System fonts and fewer third-party scripts buy speed without a redesign.
Frequently asked questions
What are the Core Web Vitals targets for a cannabis site?
LCP at or under 2.5 seconds, INP at or under 200 milliseconds, and CLS at or under 0.1, measured on mobile. Google publishes these thresholds and reports them in PageSpeed Insights and Search Console, so you can check your menu and category pages against them directly.
How do I test my dispensary site's mobile speed?
Run key pages through PageSpeed Insights. It is free, defaults to a mobile test, and shows both lab results and real-user field data once the site has enough traffic. Test the menu page and top categories, not just the homepage.
Do I need a developer to fix mobile speed?
Often not for the biggest wins. Resizing and compressing images, converting them to WebP, and removing unused widgets can all be done from most site platforms. A developer helps with font changes, script cleanup, and layout shift fixes.
Want this done for your brand?
We build cannabis & CBD search visibility with full transparency, for dispensaries, brands, and MSOs.
Get a free cannabis SEO audit ›