31 October 2026 · 12 min
Grocery store websites 2026: the weekly flyer on a phone and deli pre-orders
An independent grocery store should not try to become an online grocer. The chains run home-delivered groceries from their own warehouses with their own logistics, and a single supermarket that builds its own rarely gets anything but a cost. The website has a different job, and it is three things: the weekly flyer must be readable on a phone and land in the inbox of those who asked for it, the customer must see what is open right now in the whole house, the store, the grill, the café, the flower shop and the deli counter, and the deli must be able to take pre-orders for sandwich cakes and platters that are paid at the counter when they are picked up. Everything else, bookings, a webshop, home delivery, are questions to ask only once those three work. Here is how I built it for a supermarket in Blekinge in October, what was deliberately left out, and where a new domain causes trouble in the email.
The weekly flyer is the heart, not the webshop
For a grocery store the weekly flyer is what customers actually want from the website. At my client the flyer lived only on Facebook, on a page with tens of thousands of followers, and the old website had no connection to it at all. The problem with Facebook is not the reach but that the post disappears down the feed within a day, and that anyone without Facebook never sees it. On the new site the store manager uploads the flyer as a PDF in the panel, and the site does the rest: every page becomes an image that can be flicked through on a phone, the PDF stays for anyone who wants to print, and the flyer gets a page of its own with a share image that looks right when the link is posted on Facebook or sent in Messenger.
The second step is the flyer in the inbox. The box on the start page takes only an email address, no name and no consent checkbox: the button is the sign-up and the confirmation in the email is the consent, in two steps like every other mailing. Every week the store manager goes to the Flyer tab in the panel, checks that the week is right, writes a line of their own if needed, and presses Send a test to me. The button Send to the subscribers is locked until the test has gone out for exactly that content and the box "I have opened the test email and the flyer looks right" is ticked. If the flyer for the same week has already been sent, the page warns and requires one more checkbox. The email carries the first page of the flyer as an image, so the offers are visible without a click, and a link to the whole flyer.
The mailing goes into a queue rather than all at once: in my own build today’s letters go within an hour, and if the list is larger than 250 addresses the rest go at eight the following mornings, so that a new sender domain has time to build a reputation with the recipients’ spam filters. The rules for consent, unsubscribing and queues are in the guide on newsletters for small businesses. One thing should be said plainly: Google does not read the flyer. It is images of pages, and nobody finds the store by searching for this week’s offer. That is accepted, because the flyer is for the customers who already know the store. I could have let AI read the flyer and write the offers as text, but the store chose not to for now, and that was right: a flyer with a wrong price in text is worse than a flyer Google cannot see.
Five businesses under one roof: open-now for each of them
The supermarket I built for has, like many in the countryside, more than one business in the house: the store, a flower shop with a greenhouse, a grill, a café and a deli counter. On the old site there were the store’s hours and nothing else, and anyone looking for the grill had to guess. Now the five sit as a row of tabs at the top of every page, with the logo, the name and a line saying whether that particular business is open or closed right now, calculated from its own hours. The store is open every day from seven in the morning to nine at night at my client; the deli has shorter hours and is closed on Sundays, and that belongs on the deli’s tab, not the store’s.
Two decisions made it sustainable. Only the regular opening hours are shown as a list; deviating days such as Christmas Eve drive "open now" but are not listed, because nobody reads a list of twenty holidays. And the same opening hours feed the structured data Google reads, with the store as the main unit and the others as departments with their own hours, just as in the build for a paint store where the trade counter opens before the shop. How the Google Business Profile is managed otherwise is in the guide on local SEO. There is no way to change the hours in two places; the panel is the only place, and the store manager confirms them with a button called The hours are correct.
The mini-sites: the grill shows its boards, the café its two prices
Each business got a mini-site of its own, and the most important rule was not to invent anything. The grill’s menu is on four TV boards in the premises, and those boards are the menu on the site too, verbatim, as images under the heading "A selection from the range". No "full menu", no count of dishes, no text the staff did not write. At the top the grill itself writes two or three sentences and its phone number in the panel. It sounds modest, but a menu that always matches the board beats a prettier one that is wrong in a month.
The café got a digital menu with photos and two prices per item: one for eating in and one for taking away. The difference is not a discount but VAT: according to the Swedish Tax Agency, serving is a service at 12 percent, while food taken away is sold as groceries and temporarily sits at 6 percent, which the guide on catering prices and VAT goes through in detail. Since three out of four customers take their coffee and buns with them, according to the store itself, the take-away price comes first. And an item without a confirmed price shows no price at all, rather than a guess. The flower shop got five campaign slots with image, heading and text that the florist fills herself, without AI, and the flyer’s flower pages are not shown there: a campaign should stand in one place.
Pre-orders for the deli counter: paid at the counter, not online
The deli counter is the part of a grocery store where a website can genuinely sell, because sandwich cakes and platters are ordered in advance anyway, and today that happens by phone in the middle of the lunch rush. The flow I built is the same as for a game smokehouse outside Ystad, where the customer pre-orders and pays at the hatch: no payment provider, no card fee, no returns to handle. The customer picks the item and size, a sandwich cake for five, ten, fifteen or twenty people, or a platter per portion with a minimum number, writes any allergies and wishes, chooses a day and time within the deli’s opening hours, and gets a confirmation by email within seconds. Payment is made at the counter when the item is collected.
The lead time is what decides whether the deli trusts the system. At my client the floor is 48 hours: no web order can be placed for pickup earlier than that. If the counter has capacity the staff can lower the floor to 24 hours with one tap on the iPad, and raise it just as easily, and every tap is logged. An item that needs longer carries its own lead time in days on top of the floor. The staff’s own phone orders are exempt: there they may place an order at short notice if they themselves confirm they can make it, because the person at the counter knows better than a rule.
Allergies are handled as the law requires for distance purchases: the deli ticks for every item which of the EU’s fourteen allergens it contains, and an item that has not been filled in shows a text asking the customer to ask us, never an empty field that looks like "free from". What the rules say for food ordered online is in the guide on allergens on the menu and the website. At the counter there is an iPad with two large buttons per order, Confirm and Collected, made for a thumb with a glove on. The store chose that no order is accepted automatically: the counter presses Confirm itself, so that no customer gets a promise nobody has seen. If they need to reach the customer they call, the number is clickable on the order; email from the counter is switched off until the store’s incoming mail is in place.
What saves the most time is the day list: an A4 sheet the deli prints in the morning with the items summed per product and size, so they know that seven and a half kilos of potato salad have to be made today, and then the orders in time order with name, phone, items, wishes and allergies. Collected and cancelled orders are not on it. According to the store’s own estimate it is about twenty to sixty orders a week, and for that volume a day view and a sheet of paper are the right tools, not an order system with status flows.
Two accounts, one button called Publish
The panel has two kinds of account. The store manager sees everything: the flyer, the pages, the opening hours, the menus, the email and the orders. The deli’s account sees only the orders and the store’s email, can enter a phone order and call a customer, but cannot close a day for the web or change an opening hour; only the store manager does that. Everything that changes on the pages goes through the same three steps: change, See what it looks like in a phone frame, Publish. The site sat behind a password for the whole build, and the launch is a single switch that at once removes the password, opens the robots file, removes noindex and turns on the cookie banner. Before it is flipped the store does its part: reads the terms, ticks the allergens, confirms the hours. No launch happens until they say so.
One downside of a new domain you should count on from day one: the emails land in the spam folder for some recipients at first. In my own build the test order’s confirmation went out within ten seconds with SPF, DKIM and DMARC passing, and still landed in the junk folder in Outlook, because the domain was a couple of weeks old and had barely sent anything. It passes once the domain has been sending for a while, and that is why the queue warms up the mailings instead of sending everything on the first day. Tell the customers on the confirmation page: "Check your spam folder if the email is slow."
The members club: built, but switched off until the store wants it
The store also got a members club, built on the same engine as the flyer: sign-up with first name and email in two steps, offer letters from the panel with one to three items with photo, a price or a free item, a validity period and at most so many per customer, and a test letter to the manager’s own address before anything goes out. The mailings are spread over the days according to a cap that grows with what the domain has proven, and at least three days pass between two letters. Ahead of the launch the store chose to keep the club closed and start with the flyer. That is the right order: a list that gets a flyer every week is a list that opens, and only then is an offer worth sending. Nothing on the site promises a club that does not exist yet.
Checklist for a grocery store website
- The weekly flyer as page images and PDF, on a page of its own with the right share image, uploaded by the store itself in the panel.
- The flyer in the inbox: sign-up with just an address, confirmation in two steps, a test to yourself before every mailing, and a queue that warms up the domain.
- Open-now per business in the house, with only regular hours as a list and deviating days that drive the status without being listed.
- Menus that match the wall: the grill’s boards as images, the café’s two prices with take-away first, no price where none is confirmed.
- Pre-orders for the deli counter with a lead time the counter itself can lower, allergens per item, payment at pickup and a day list on paper.
- Two accounts: the store manager who sees everything, the counter that sees its orders.
- No online groceries, no home delivery, and a Google profile that does not claim it either.
When I build for a grocery store this is the foundation: the flyer where the customers are, one truth about what is open, and a counter that takes orders without anyone having to stand by the phone. What I build and how it works is under services.
Frequently asked questions
Does a grocery store need a webshop or online groceries?
No, not an independent store. Grocery e-commerce requires warehousing, picking and refrigerated transport, and the chains do it with volumes a single store does not have. What works is pre-ordering of what is ordered in advance anyway, sandwich cakes, platters and cakes, with payment at the counter when the item is collected. Then no payment provider, returns or shipping are needed, only a lead time the counter trusts.
How do I put the weekly flyer on the website so it can be read on a phone?
Upload the flyer as a PDF and let the site turn every page into an image that can be flicked through with a thumb, with the PDF kept as a link for printing. Give the flyer a page of its own with the week number and a share image of the first page, so the link looks right on Facebook and in Messenger. Do not count on Google finding the offers: images of a flyer cannot be searched, so the flyer is for those who already know the store.
Can customers pre-order from the deli counter without paying online?
Yes, and for a store it is usually best. The customer picks the item, size, day and time, writes allergies and wishes and gets a confirmation by email; payment is made at the counter when the item is collected. What it takes is a lead time that protects the counter, at my client 48 hours that the staff can lower to 24 with one button, and that the counter itself confirms every order instead of the system promising something automatically.
How do I show different opening hours for the store, the grill and the deli?
Give each business its own hours in the panel and let the site calculate "open now" per business, visible in a row of tabs at the top of every page. Show only regular hours as a list and let deviating days drive the status without being listed. Mark the store as the main unit and the others as departments with their own hours in the structured data, so that Google shows the right hours to someone searching specifically for the grill.
May I email the weekly flyer to customers?
To someone who signed up their own address and confirmed it in an email, yes, as long as every mailing has an unsubscribe link and a line about why the email arrives. Send a test to yourself first, and do not send the same flyer twice. With a new domain: spread the mailing over the days instead of sending everything at once, otherwise the flyer lands in the spam folder.
Why does the café menu have two prices for the same item?
Because the VAT differs: according to the Swedish Tax Agency, serving on the premises is a service at 12 percent, while the same bun taken away is sold as groceries and temporarily sits at 6 percent. Show both prices and put the one customers choose most often first; in a café where most people take their coffee and buns with them, that is the take-away price.
Is your weekly flyer only on Facebook?
Book a free 30-minute call. I look at how your store shows today, in Google, on Facebook and on the site, and tell you straight what is worth building and what you should leave alone.
Book a free call →