Where to Buy Page: Help Customers Find Your Coffee


Short answer: a where to buy page is a dated, searchable list of the places that carry your coffee, organized by town, with a clear line for buying directly online. It should read like a service to the customer standing in front of it, not like an afterthought tucked under a social post.
If you roast coffee and your bags sit on shelves in grocery stores, gift shops, or other cafes, you already get the question. Someone tried your coffee at a friend's house, or picked up a bag while traveling, and now they want to know where to buy it again. If the answer lives only in a caption from three months ago, or nowhere at all, you are sending that person back to a search engine to guess, and they will often just buy whatever shows up first instead.
This post walks through how to decide whether to list stockists at all, what to ask each one before you do, how to structure the page itself, and what to watch for if you use a locator app instead of a plain list. None of it requires guessing at numbers that do not exist. More than 1,000 shops across six regions were checked as of September 15, 2026, and a stockist field simply is not something that census tracks, so this is a how to grounded in a small dated sample of roaster sites and in documented platform behavior, not a study with a published rate.
That distinction matters more than it sounds. A study tells you what most roasters currently do, which can just as easily mean most roasters currently do this poorly. A how to tells you what to build regardless of what everyone else has gotten around to. This post is the second kind, built from a real, dated look at how a small sample of roaster sites structure this exact page today, plus what the relevant documentation actually says about listing pages and how search engines read them.
Deciding Whether to List Stockists
Not every roaster needs a public stockist list. If your coffee is sold only through your own site and your own cafe counter, this page is not for you yet, and adding one would just be an empty page waiting for content. The page earns its place the moment a second, independent business starts carrying your bags, because at that point customers genuinely do not know where else to look.
Before you list any retailer, ask them directly whether they want to be named and linked. This sounds obvious, but it gets skipped often enough that it is worth saying directly. A shop's inventory changes, an order might be a one time favor rather than an ongoing account, and some retailers would rather not be listed publicly at all for reasons that have nothing to do with you. A short message asking permission, confirming the current carry status, and asking whether they would like their own link included costs you five minutes and avoids listing a retailer that quietly stopped ordering months ago.
Once you have permission, treat the page as a living document rather than a one time project. A stockist list that was accurate on launch day and untouched since is worse than no list at all, because a customer who drives to a location that no longer carries your coffee will remember that mistake longer than they will remember never having found the page.
It is also worth deciding, before you build anything, how much detail each entry needs to carry. A grocery store that stocks your whole bean bags on a shelf near the register needs a different level of detail than a cafe that brews your coffee by the cup and sells retail bags at the counter on the side. Naming that difference plainly in the entry itself, rather than leaving a customer to guess, saves everyone a wasted trip and a confused phone call to the retailer.
Structure: Fields, Grouping, and the Map Question
A small, informal check of a dozen roaster sites listing where roast appeared in the general business description found that where to buy pages take a handful of recurring shapes: a plain alphabetical list, a list grouped by town or region, a store locator app embedded in the page, or some mix of a list plus a map. Very few of the pages checked showed a visible update date anywhere near the list itself, which is the single easiest fix available to any roaster building this page today.
For most single roaster operations, a plain list grouped by town beats a map or a locator app on almost every count that matters to a customer. A list loads instantly, it is easy to scan on a phone, and it does not depend on a script running correctly before the content appears. Group entries by town or region rather than alphabetically by store name, because a customer thinking where to buy your coffee is almost always thinking in terms of where they already are or where they are headed, not in terms of a retailer's name.
Each entry should carry a small, consistent set of fields: the retailer's name, its town, its street address, the general kind of product it carries such as whole bean bags, cans, or both, and the date you last confirmed the listing. That last field does more work than it looks like it does. A visible confirmed date tells both the customer and a search engine that this list is maintained rather than abandoned, and it gives you an honest trigger for your own review schedule.
If you do add a map, keep the underlying list of entries as real text on the page as well, not only as pins that appear after a script loads. A map is a nice visual layer on top of a list. It should never be the only place the information lives, because a map alone leaves both customers on a slow connection and search engines with a much harder time finding the actual retailer names and addresses.
What Locator Apps Can Hide From a Search Engine
Some roasters reach for a third party store locator app rather than building a plain list by hand, and that choice is reasonable once a stockist list grows past a couple dozen entries. The tradeoff worth understanding is how that content gets delivered to the page. On some locator setups, the actual retailer names and addresses only appear in the page after a script runs in the visitor's browser, rather than existing as plain text in the page's underlying HTML from the start.
Google's own developer documentation on JavaScript SEO basics addresses this exact situation: content that depends on a script running correctly is not guaranteed to be treated the same as content that is present in the raw HTML from the first load. The practical way to check your own locator setup is simple and does not require any technical background. View the page's source, before any script runs, and look for the actual stockist names and addresses in that raw text. If they are missing from that raw view and only appear once the page finishes loading in a normal browser, that is worth knowing, because it changes how confidently you can expect that content to be found and understood the same way a plain list would be.
None of this means a locator app is wrong to use. It means the choice should be a deliberate one, made with an understanding of the tradeoff, rather than a default picked because it looked polished in a demo. If you go this route, ask your platform whether the retailer content is rendered into the initial page load or only after a script executes, and if you cannot get a clear answer, view source yourself and check.
The same view source check is worth repeating any time you switch platforms or install a new locator plugin, since the underlying behavior can change even when the visible page looks identical to a visitor. A few minutes spent confirming this once, and again after any significant platform change, is a small habit that protects a page you already spent real effort building.
A Simple Entry Template and Permission Message
A stockist entry does not need to be elaborate. A clean, repeatable template looks like this: retailer name, town and state, street address, product carried in one short line, and a confirmed as of date. Repeating that exact structure for every entry, rather than writing a unique paragraph for each retailer, makes the page faster to scan and faster for you to maintain when something changes.
For the permission step, a short message works better than a long one. State plainly that you would like to list them as a place customers can find your coffee, confirm the products they currently carry, ask whether they would like their own site or social link included next to their name, and ask them to tell you if that ever changes. Keeping this message short makes it more likely a busy retail manager actually reads and answers it.
Build the permission message once and reuse it for every new retailer, adjusting only the retailer's name and the specific products you believe they carry. A template also gives you a paper trail. If a retailer's status ever needs to be confirmed again months later, you can point back to the original message and the date they replied, rather than relying on memory about what was agreed.
Schema.org's ItemList type gives a structured way to describe this kind of list to a search engine, using properties built for exactly this purpose, listing named items in an ordered or unordered set. You do not need to understand the full specification to use it. A developer or a platform's built in structured data tool can apply it once your list of stockist entries is settled, and it simply gives a search engine a clearer, more structured version of the same list a customer already sees on the page.
Keeping the Page Accurate Over Time
Set a review date for the page the same week you publish it, not months later once you notice something is wrong. A quarterly check is a reasonable rhythm for most roasters: open the list, confirm each retailer still carries your coffee, remove anyone who has stopped, and update the confirmed date on every entry you verified, even the ones that did not change.
A closed shop or a former stockist left on the page indefinitely does real, quiet damage. A customer who drives out of their way based on outdated information will not necessarily come back to tell you the listing was wrong. They will simply assume your coffee is harder to find than it is, which is close to the opposite of what this page exists to prevent.
Pair the quarterly review with a small habit change on the front end: whenever you sign a new stockist or lose one, add or remove them from the page the same week rather than waiting for the next scheduled review. The quarterly pass then becomes a confirmation of accuracy rather than the only moment the page ever gets touched, which keeps the whole list closer to correct at any given time a customer happens to visit.This page is a service to an existing fan first, and only a search page second. It exists because someone already liked your coffee enough to go looking for it again. Treat that person's five minutes of searching with the same care you would give a customer standing at your own counter, and the structure and update habits described here will follow naturally from that.
Related Reading
More from Hillcane on this topic, plus the pages on the site that sit next to the work.
Frequently Asked Questions
Do I need a where to buy page if I only sell coffee through my own site?
Not yet. This page earns its place once a second, independent retailer, a grocery store, a gift shop, or another cafe, starts carrying your bags and customers start asking where else to find you. If you sell only through your own site and counter, an empty stockist page adds nothing and is one more page to maintain for no reason.
Should I list a stockist without asking them first?
No. Ask permission before listing any retailer, and confirm what they currently carry while you are at it. A retailer's inventory changes, an order can be a one time favor rather than an ongoing account, and some retailers would rather not be listed publicly. A short permission message takes a few minutes and avoids listing someone who quietly stopped carrying your coffee.
How should I organize the list, alphabetically or by town?
Group entries by town or region rather than alphabetically by retailer name. A small check of a dozen roaster sites found this to be the more common and more useful pattern, since a customer looking for where to buy your coffee is usually thinking about where they already are or where they are headed, not about a specific retailer's name.
What fields should each stockist entry include?
Keep the entry consistent: retailer name, town and state, street address, a short line on what they carry such as whole bean bags or cans, and a confirmed as of date. A small sample of roaster sites found very few showing a visible update date, which is the easiest and most useful fix any roaster can make to this kind of page.
Is a store locator app better than a plain list?
For most single roaster operations, a plain list loads faster, is easier to scan on a phone, and does not depend on a script loading correctly before the content appears. A locator app can make sense once a list grows past a couple dozen entries, but check whether the actual retailer names and addresses exist in the page's raw HTML or only appear after a script runs.
How do I check whether my locator app content is visible to search engines?
View the page's source before any script runs and look for the actual stockist names and addresses in that raw text. If they only appear once the page fully loads in a normal browser and are missing from the raw source, Google's JavaScript SEO basics documentation notes that scripted content is not guaranteed to be treated the same as content present from the first load.
Should I include a map on my where to buy page?
A map can be a useful visual layer, but keep the underlying list of stockist entries as real text on the page too, not only as pins that appear after a script loads. That keeps the information usable for a visitor on a slow connection and easier for a search engine to read as plain, structured text.
What structured data should I use for a stockist list?
Schema.org's ItemList type fits, since it is built to describe a set of named items, ordered or unordered. You do not need to learn the full specification: once your entries are settled, each carrying a retailer name, town, street address, products carried and a confirmed as of date, a developer or your platform's built in structured data tool can apply it. It gives a search engine a structured version of the same list customers see, and it works best alongside plain text entries, not scripted ones.
How often should I update my where to buy page?
Quarterly is a reasonable rhythm for most roasters: open the list, confirm each retailer still carries your coffee, remove anyone who has stopped, and update the confirmed as of date on every entry you checked, even unchanged ones. Between reviews, add or remove a stockist the same week you gain or lose one. Set the first review date the week you publish, because a closed shop left on the page sends a real customer to the wrong place.
Can Hillcane help build a where to buy page for my roastery?
Yes. Hillcane can help you decide whether the page is worth building yet, structure the entries so they are easy to scan and easy to maintain, and set up the update rhythm so the page stays accurate. Reach out at hillcane.co/contact or call (256) 384-2449 to talk through what that would look like for your stockist list.
Work with Hillcane
Someone tried your coffee at a friend's house and now wants to buy it again. If your where to buy page cannot answer them in five seconds, they will just buy something else.
If your roastery needs a where to buy page that actually helps customers find you, reach Hillcane at hillcane.co/contact or call (256) 384-2449.



Comments