Case Study

Retail Loyalty and Rewards App for Multi-Site Restaurant Group

A cross-platform loyalty app that drove a 28% increase in repeat visit frequency and grew the loyalty programme from 4,000 to 31,000 members in six months.

Client
Hearth & Co Restaurants
Industry
Hospitality / Retail
Duration
12 weeks
Delivered
October 2025
Cross-Platform App DevelopmentApp UI/UX DesignWeb Application Development

Key Results

  • Loyalty members: 4K → 31K in 6 months

  • Repeat visit frequency +28%

  • Average order value +£4.20

  • Push notification open rate: 34%

  • App Store rating: 4.8/5

The Challenge

Hearth & Co operates twelve restaurant locations across the North of England. They had an existing loyalty programme — a physical stamp card — that was popular but had no data attached to it. They had no insight into which customers were loyal, how often they visited, or what incentives would drive repeat behaviour.

The business goals for the app were concrete:

  1. Move loyalty data from physical cards to a digital profile
  2. Use that data to send targeted, personalised promotions
  3. Increase average order value by surfacing relevant upsells at the right moment
  4. Grow the loyalty programme to 20,000+ members within six months of launch

Technical Architecture

Points Engine

The core of the app is a real-time points calculation and redemption engine:

  • Points awarded per visit via QR code scan at point of sale
  • Bonus points multipliers for specific days, menu items, or promotional periods
  • Tier system (Regular → Regular+, Gold, Platinum) with progressive benefits
  • Instant redemption at POS — no delay between earning and spending

The engine is implemented as a Node.js microservice with PostgreSQL, handling peak load during lunch and dinner rushes without degradation. We load-tested to 500 concurrent redemptions per second — approximately 10x the expected peak.

POS Integration

Hearth & Co uses Lightspeed as their POS. We built a webhook receiver that:

  • Receives transaction events from Lightspeed in real time
  • Calculates points earned and updates the member's balance
  • Triggers push notifications confirming points earned and showing current balance
  • Detects qualifying spend for tier upgrades and fires upgrade notifications

React Native App

The app needed to feel premium — Hearth & Co's brand is upmarket casual dining. We used:

  • React Native with Reanimated 3 for smooth, restaurant-quality animations
  • Expo Camera for QR code scanning at POS
  • React Native Maps for restaurant finder with live availability
  • Notifee for rich push notifications (with images and action buttons)

One design challenge: the QR code scan needed to work in dim restaurant lighting. We implemented adaptive flash triggering and a high-contrast QR code generation algorithm that significantly improved scan reliability in low-light conditions.

Admin Dashboard

A separate Next.js admin dashboard for the marketing team:

  • Real-time loyalty programme analytics
  • Segment builder for targeted push campaigns (e.g., "Gold members who haven't visited in 14 days")
  • Promotion builder with scheduling, multiplier rules, and budget caps
  • Export for CRM integration

Results (6-Month Post-Launch)

Programme growth:

  • Loyalty members grew from 4,000 (stamp cards) to 31,000 (app) in six months
  • 78% of app downloads resulted in a registered loyalty account

Behavioural impact:

  • Average visits per active member per month increased from 1.4 to 1.8 (+28%)
  • Average order value increased by £4.20 — attributed to the contextual upsell recommendations

Engagement:

  • Push notification open rate: 34% (industry average for hospitality: 12%)
  • Monthly active users at month 6: 18,400 (59% of registered members)

App quality:

  • App Store: 4.8/5 (891 reviews)
  • Google Play: 4.7/5 (743 reviews)
  • QR scan success rate: 98.7% (including low-light restaurant environments)

What Made the Difference

The push notification strategy was the single highest-impact feature. The 34% open rate — nearly 3x industry average — came from personalisation. Every notification referenced the member by name, showed their specific points balance, and contained a single relevant action (e.g., "You're 50 points from Gold — visit today to get there"). Generic mass broadcasts had open rates below 8%.

The lesson: a loyalty programme generates its value from the data it produces. The app is a data collection mechanism as much as a customer-facing product.

Build your loyalty app →