All articles
Marketing

Happy Hour and Discount Campaigns in a POS

August 5, 20269 min readBeställNu Team

A good happy hour can turn a dead Tuesday into your most profitable night of the week. A bad one can train your customers to never pay full price again. The difference is not luck - it is how you set up and track your campaigns.

This article covers the types of discount campaigns that actually work for restaurants, how to set them up without creating chaos, and how BeställNu's dynamic pricing rules let you run campaigns that start and stop on a schedule.

Why campaigns matter

Restaurants live and die by capacity utilization. Your rent, staff, and utilities cost the same whether you have 20 guests or 80. So the game is filling seats during slow periods without giving away the farm during busy ones.

Campaigns do three things:

  1. Fill slow periods: Happy hour between 16:00 and 18:00 turns a dead afternoon into revenue.
  2. Move specific inventory: Got too much salmon? A salmon feature with a discount moves it before it spoils.
  3. Build habits: A consistent Tuesday taco deal makes Tuesday "taco night" in your neighborhood. People plan their week around it.

The risk is that campaigns become permanent discounts. If you run "50% off burgers" every day, it is not a campaign - it is just a price cut. And your margins disappear.

Types of campaigns that work

Happy hour (time-based pricing)

The classic. Specific items or categories are discounted during a set time window. Example: 16:00-18:00, all draft beer is 39 SEK instead of 69 SEK.

Why it works: it creates urgency. People come early because the deal expires. It fills your slowest hours. And once happy hour ends, prices go back to normal automatically.

BOGO (buy one get one)

Buy one item, get a second free or discounted. Example: buy one pizza, get the second half price.

Why it works: it moves volume and feels generous. Great for groups. The risk is that two people who would have each bought a pizza now split the cost and you make less. Use it for items with high margin or when you need to move inventory.

Combo meals

Bundle items together at a lower price than buying separately. Example: burger + fries + drink for 119 SEK (vs 149 SEK separately).

Why it works: it increases average ticket size while feeling like a deal. The guest perceives value, you get a higher total. This is the fast food industry's bread and butter for a reason.

Time-based pricing (off-peak)

Different prices at different times, not just a "happy hour" window. Example: lunch menu 11:00-14:00, early bird 16:00-17:30, regular menu after.

Why it works: it maximizes revenue per time slot. You charge less when demand is low and full price when demand is high. Airlines and hotels do this. Restaurants can too.

Category discounts

Discount an entire category for a period. Example: "Wine Wednesday - 20% off all bottles all day."

Why it works: it is simple to communicate and simple to run. One rule, one category, one day. Easy for staff, easy for guests.

How to set up campaigns without chaos

The biggest mistake restaurants make with campaigns is running them manually. The server has to remember "it is happy hour, change the beer price" or "apply the BOGO discount to the second pizza." That is a recipe for inconsistency and lost margin.

Here is what should happen instead:

  1. Define the campaign in the backoffice: item(s), discount amount, time window, days of week, start and end date.
  2. The POS applies it automatically: when a server rings up the item during the campaign window, the discounted price shows. No manual discount button, no remembering.
  3. The campaign ends automatically: when the time window passes, prices revert. No one has to "turn it off."
  4. Track the results: the backoffice shows how many discounted items sold, the revenue impact, and the margin effect.

If your POS cannot do this, you are running campaigns on willpower and sticky notes. That works for about a week.

How BeställNu handles dynamic pricing

BeställNu's campaign engine is built around dynamic pricing rules. Here is what you can do:

Time-based rules

Set a campaign that activates during specific hours on specific days. Example: "Draft beer 39 SEK, Monday-Friday 16:00-18:00." The POS applies the price automatically during that window and reverts after. You set it once and it runs every week until you turn it off or set an end date.

Item and category targeting

Apply discounts to single items, multiple items, or entire categories. "20% off all wines" is one rule. "Burger + fries combo for 119 SEK" is another. You are not limited to one campaign at a time - you can run a happy hour and a combo meal simultaneously.

Date ranges

Campaigns can have start and end dates. Run a "Valentine's Day couples menu" for one day. Run a "summer drink specials" campaign for three months. The campaign activates and deactivates on schedule.

BOGO and quantity-based rules

Set up "buy 2 get 1 free" or "second item half price" rules. The POS calculates the discount based on quantity in the cart. No manual math.

Online ordering integration

Campaigns you set up in the backoffice apply to your online ordering page too. If happy hour is active, the online menu shows the discounted prices during the window. No separate campaign setup for online vs in-store.

Audit trail

Every discounted sale is logged with the campaign name, original price, discounted price, and discount amount. Your Z-report breaks down campaign discounts separately so you can see exactly how much margin you gave away. And since Z-reports sync to your accounting automatically, your accountant sees the same numbers.

Tracking campaign ROI

Running a campaign without measuring it is like throwing a party and not checking who showed up. Here is what to track:

Revenue during the campaign window

Compare revenue during the campaign window to the same window the week before (or a comparable period). Did the campaign lift total revenue, or did it just discount sales you would have gotten anyway?

Item mix

Did the campaign sell the target items? A happy hour on beer should move more beer. If beer sales did not change but food sales went up, the campaign worked as a traffic driver even if the discount itself was not the star.

Margin impact

Calculate the gross margin on discounted items vs full-price items. If you sold 100 beers at 39 SEK (cost 15 SEK, margin 24 SEK) vs 50 beers at 69 SEK (margin 54 SEK), the campaign generated 2,400 SEK margin vs 2,700 SEK. But if those 100 beer-drinkers also bought 60 portions of fries at full margin, the campaign was a win.

Traffic

Did the campaign bring in more guests? Compare cover counts during the campaign window to the prior period. More covers at a lower margin per cover can still be more total profit.

BeställNu's backoffice gives you the sales data to answer all of these. The campaign audit trail plus your daily sales reports let you calculate ROI without a spreadsheet gymnastics session.

A note on the April 2026 VAT change

Since we are talking about pricing, this is a good place to mention the VAT change that took effect April 1, 2026. Dine-in food stays at 12% VAT. Takeaway food dropped to 6% VAT.

This matters for campaigns because if you run a campaign that spans dine-in and takeaway, the VAT rate differs. BeställNu handles this with per-product VAT configuration - each product has its own VAT rate, and the POS applies the correct rate based on whether the sale is dine-in or takeaway. So your campaign pricing works correctly across both, and your Z-report splits the VAT accurately for your accounting.

If your POS does not support per-product VAT, this change is a headache. With BeställNu, it is just a setting.

Common questions

Can I run multiple campaigns at once?

Yes. You can have a happy hour, a combo meal, and a category discount all active simultaneously. The POS applies the rules based on what the guest orders and when.

Do campaigns work on online orders?

Yes. Campaigns set in the backoffice apply to your bestallnu.com ordering page during the active window. Online guests see the same prices as in-store.

Can I limit a campaign to certain days?

Yes. Every campaign rule lets you pick days of the week. "Wine Wednesday" only runs on Wednesdays. "Happy hour" can run Monday-Friday but not weekends.

What happens to a campaign if I change a menu price?

Campaign discounts are calculated from the current menu price at the time of sale. If you raise the base price, the campaign discount applies to the new price. You do not have to update the campaign.

Wrapping up

Campaigns are one of the most powerful tools a restaurant has for filling seats and building habits. But they only work if they are automated, tracked, and time-limited. Manual discounts become permanent discounts, and permanent discounts eat your margins.

BeställNu's dynamic pricing rules let you set up happy hours, BOGOs, combos, and time-based pricing that start and stop on schedule, apply across in-store and online, and report back so you know whether they worked.

Want to see the campaign engine in action? Book a demo and we will set up a happy hour rule live so you can see how it flows from backoffice to POS to Z-report.

campaignsdiscountshappy-hourpromotions

Ready to run your restaurant your way?

Join restaurants across Sweden using BeställNu to simplify operations, increase revenue, and stay compliant.