QR menu with actual analytics for restaurants

B2BWeb1 weekAstroSupabasePlausible-style analytics

The idea

Covid made QR menus universal, but they’re all dumb PDFs or static pages. Restaurant owners make menu decisions blind — they know what sells (POS data) but not what diners looked at and rejected. A dish with high views and low orders has a pricing or description problem. That gap between attention and orders is data no restaurant currently has.

Who pays

Independent restaurants and small chains. Price at $29–49/month per location. Sell it as “know which dishes to cut” — menu engineering consultants charge thousands for this.

MVP scope

  • Menu builder + instant-publish QR pages
  • Four event types: open, section view, dish tap, dwell
  • One dashboard page with the four core charts
  • Skip for v1: ordering, payments, translations, POS integration
// Build prompt — paste into Cursor / Claude Code / Lovable / Bolt
Build MenuLens: a QR-code menu platform for restaurants that includes
dish-level analytics.

Restaurant owner flow: sign up, create a menu (sections and dishes with
name, description, price, photo, dietary tags), get a QR code PNG/SVG to
print. Menu edits go live instantly — that's the pitch against printed
menus.

Diner flow: scan QR, get a fast mobile menu page. No app, no login. Track
anonymized events: menu opens, section views, dish taps (tap expands a
dish's photo and description), and dwell time per dish. No cookies, no
personal data — aggregate counters only.

Owner dashboard: for a chosen date range show most-viewed dishes,
most-expanded dishes, dishes nobody taps (candidates to cut or re-photo),
and busiest scan hours. One clear insight-style summary line at the top,
e.g. "Your seafood section gets 3x more views after 7pm."

Stack: Astro for the public menu pages (they must load instantly on 4G),
Supabase for auth/data, a tiny vanilla-JS event beacon, and a simple
dashboard with server-rendered charts (use a lightweight chart lib).
Multi-tenant from day one: menus live at menulens.app/m/<restaurant-slug>.

// More B2B ideas