Take bookings on every device, every channel.
An embeddable widget that drops onto any site in one line, plus a full staff portal for the front desk. Real-time availability and conflict prevention built in.
Embeddable widget
One line of HTML. HMAC-signed, CORS-allowlisted, and styled to match your site — no iframes that look like 2008.
Multi-resource scheduling
Lanes, holes, bays, rooms, courts — anything bookable. One generic resource model handles every activity you run.
Real-time availability
Atomic conflict prevention at the lane level. We re-verify the slot the instant before payment and commit each booking with a conditional insert — so two customers racing for the same lane down to the millisecond can’t both win. The second one is bounced before any money moves.
Group & party bookings
Block multiple lanes, attach a package. Birthday parties, corporate events, and league nights all flow through one screen.
Front-desk portal
Staff add walk-ins, reassign lanes, and check in customers — all from one screen, no app installs. Lane reassignments re-check availability so you can't accidentally double-book.
Branded widgets per tenant
Brand the widget per venue — upload your logo, set your colors, pick a font, and add custom images for each activity. The widget feels like part of your site, not a third-party graft.
Confirmations & reminders
Automated email confirmations the moment a booking lands — to the customer AND your team. Fewer no-shows, fewer phone calls.
Drop the widget anywhere.
WordPress, Wix, Squarespace, plain HTML, even a Linktree. One line of code, signed at the edge, online in minutes.
Price the way your venue actually works.
Per-hour, per-person, per-round, flat, time-tiered, season-based, day-part — and combinations of all of the above. If you can describe it, you can price it.
Per-hour pricing
The classic. Per-lane, per-bay, per-room. Set base rates and override by day or part-of-day.
Per-person/hour
Charge by headcount, by the hour. Set tiered rates by party size — e.g. 1–3 players at $20/hr, 4+ at $15/hr. Bracket discounts apply automatically.
Hour-tier deals
"Hour 1 = $20, Hour 2 = $15, Hour 3 = $10." Built in. The longer they stay, the better the rate — automatic.
Per-round & flat rates
Some activities don't run on a clock — golf rounds, escape rooms, axe lanes. Charge per round or a single flat fee.
Day-part pricing
Cosmic bowl, family hours, golf-sim happy hour. Different rates for different parts of the day, applied automatically.
Season-based pricing
Set rates that swap automatically by date range. Summer specials June–August, league season October–April — the engine knows.
Multi-currency
CAD, USD, GBP, EUR — pick your currency at the tenant level. Money is stored in cents so the math is always exact.
One platform, every kind of fun.
The generic resource model means LaneBooker isn't locked to one sport. Run multiple activities under one roof — or one tenant, one activity, your call.
Don't see your activity? The resource model is generic — if it has lanes, bays, rooms, courts, or slots, LaneBooker books it.
The customers who actually keep coming back.
Profiles, history, tags, marketing source. Every booking adds context. By the third visit, you know what they drink, who they bring, and which lane they ask for.
Customer profiles
Name, contact, history, lifetime value. Every walk-in becomes a record you can search and segment.
Marketing tags
Tag customers by source — Facebook ad, walk-in, league, party guest. Filter by tag and export a clean CSV so you can run targeted campaigns from the email tool of your choice.
Loyalty & repeat customers
Repeat-visit detection plus manual VIP tagging. Mark your regulars without spreadsheets.
Email notifications
Booking confirmations to customers, new-booking alerts to your team. Email through Resend.
Sell more than the lane.
Shoe rental, bumpers, lane decoration, food & drink combos, party kits — bolt them onto a booking or wrap them into a package. Per-tenant catalog, no platform-wide forced menu.
13+ canonical add-ons
Shoe rental, bumpers, decoration, food & drink combos, instructor, league fees, lane reservation. Build your own catalog or start from 16 pre-modeled add-ons.
Bundled packages
Kid party, corporate event, league night, Rock-n-Bowl — define once, customers book at one click. Price the bundle, not the parts.
Per-tenant catalog
Your add-ons, your prices, your menu. We don't force a master catalog on you — every venue ships its own.
Upsell at checkout
The widget surfaces add-ons during booking — shoes, snacks, decorations, drinks. Customers add what they need at checkout, no phone call required.
Auto-add per person
Set add-ons to auto-attach by headcount — 5 bowlers means 5 pairs of shoes in the cart. And bundle rentals can include shoes for free so guests don't pay twice.
Special requests note
A free-text notes field at the bottom of every booking. Customers can add shoe sizes, pizza toppings, decoration colours, dietary needs — the front desk sees it before the party arrives.
Birthday parties pay the bills.
Parties, themed nights, corporate buyouts, and recurring league nights live as first-class objects — not booking hacks. The most lucrative bucket gets the most love.
Birthday parties
Built for the bucket that pays the bills. Set up party packages, attach add-ons, and let groups book themselves with the right party size.
Themed events
Rock-n-Bowl Friday. Glow Saturday. Set up themed events with their own recurrence, theme color, and pricing. Customers see the special rate automatically when they book during that window.
Capacity & cutoffs
Cap a themed night at 80 guests. Cut bookings off 2 hours before the event. Prevent double-bookings with hard rules.
Stripe Connect — your money, your bank.
You connect your own Stripe account. Customer cards charge you directly. We don't sit in the middle of your money — and we don't mark up Stripe's fees.
Stripe Connect
Connect with your Stripe API keys. Funds settle to your bank, not ours. No payout delays, no platform skim.
Refund & rebook
One-click refund flows. Rebook from a cancellation, carry forward the deposit, void without re-typing the customer.
Multi-currency
Charge in CAD, USD, GBP, EUR — whichever Stripe supports for your region. Configured at the tenant level.
Receipts & reconciliation
Auto-emailed receipts. Booking IDs match Stripe metadata. End-of-day reconciliation that takes minutes, not hours.
Stripe Radar fraud protection
Riding on Stripe's anti-fraud stack out of the box. 3DS where required.
Run the venue from one screen.
Theme overrides, settings, audit log, contracts, retainer hours. Owners get a clean view of their business; managers get the controls they need; nobody sees what they shouldn't.
Per-tenant theming
Logo, colors, fonts. Stored as overrides — your widget looks like you, not us.
Full audit log
Every admin mutation logged with actor, timestamp, before/after. Compliance-friendly. Argument-ending.
Retainer hour tracking
Support contracts (default 3 hrs/month) tracked per tenant. Tenants see remaining hours; we see the full ledger.
Cross-tenant view
The platform admin gets a single pane across every venue. Your data stays yours; the platform stays accountable.
Role-based access
Owner, manager, front-desk, marketing — each role sees exactly what they need. No one accidentally edits the price book.
Built multi-tenant from line one.
Every venue is its own tenant — its own subdomain, its own branding, its own data. Isolation is enforced at the query layer, not promised in the marketing copy.
Subdomain or path
Each tenant gets your-venue.lanebooker.ca or /your-venue — your call. Friendly URLs, clean DNS.
HMAC-signed widget
Per-tenant widget_key + widget_secret. Every widget call is signed and verified at the edge — no one spoofs your venue.
CORS allowlist per widget
Only domains you authorize can mount your widget. Stop competitors from embedding your booking flow on their own site.
Strict data isolation
Every query scoped by tenant_id. Enforced by middleware. Your customer list never bleeds into anyone else's report.
White-label friendly
Run LaneBooker behind your own brand. Your customers never see ours. Powered by, not branded by.
Per-tenant timezones
UTC stored, tenant timezone rendered. Owen Sound runs America/Toronto; your Vancouver location runs America/Vancouver. No DST surprises.
Numbers you can actually act on.
Booking volume, revenue, lane utilization, customer LTV, add-on attach rate. Not a dashboard for the sake of a dashboard — the metrics that move your bottom line.
Booking volume & revenue
By day, week, month. Revenue trend chart, hour-by-day heatmap, top channels.
Booking heatmap
Hour-by-day booking heatmap. Spot the slow Tuesday afternoons and the packed Friday nights. Reprice or staff up where it matters.
Customer LTV
Lifetime value tracked per customer. Sort by LTV to spot regulars worth keeping. Export the list to your email tool for VIP campaigns.
Add-on & package attach rate
Top add-ons ranked by quantity sold and revenue. See what's worth keeping on the menu and what's not pulling its weight.
CSV exports everywhere
Export bookings, customers, and payments to CSV. Filter the list, click export, drop into Mailchimp, Klaviyo, or your own BI tool. Your data, your spreadsheet.
Real-time dashboards
Today, this week, this month summaries. Booking heatmap. Edge-hosted on Cloudflare for low latency.
Plays well with the stack you already run.
Embeddable widget, Stripe payments, email, webhooks, calendar feeds, audit log API. We don't try to replace your tools — we slot into them.
Embeddable widget
WordPress, Wix, Squarespace, raw HTML, Webflow. Anywhere you can paste a script tag, you can take bookings.
Stripe
Connect Stripe with your API keys. Customer cards, full refunds, payouts to your bank — all native.
Email — Resend
Booking confirmations and admin alerts via Resend. Sent through your domain so customers see your name, not ours.
Audit log API
Programmatic access to every admin mutation. Pipe to your SIEM, your data warehouse, your compliance team.
CSV export
Export bookings, customers, and payments as CSV. Filter the list, click export, drop into your spreadsheet or BI tool. Take it all with you on day one thousand.
Cloudflare-native. Edge-fast.
Workers, D1, R2, KV — the whole stack runs at the edge. Sub-50ms booking responses anywhere on Earth. Zero servers to babysit.
Cloudflare Workers + D1
Hono on Workers, SQLite at the edge via D1. Your booking widget hits a server 30ms from your customer's couch.
Daily encrypted backups
Plus D1 Time Travel for point-in-time restore. Mistakes are reversible. So are bad nights.
Per-tenant logical exports
One-click full export of your tenant's data — customers, bookings, payments, settings — as a JSON archive.
Defense at the edge
Cloudflare WAF, rate limiting, bot management on every request. Your booking flow doesn't go down because someone scrapes you.
Money in cents, dates in UTC
Money stored as integers. Times stored as UTC epoch. Currency rounding bugs and DST off-by-ones don't happen here.
Versioned migrations
Every schema change is a tracked, ordered migration. We never silently rewrite your database. Boring, by design.
Real humans, not bots.
Pro and Scale include retainer hours and ticketed support. We onboard you, we answer when something breaks, and we don't outsource your venue's lifeline to a chatbot.
Retainer hours included
Default 3 hours/month per tenant for support, training, and small build asks. Overages billed transparently — no surprise invoices.
Ticketed support
Submit from inside the admin. We see context — tenant, plan, recent activity — without you having to explain.
Documentation portal
Searchable docs, embed snippets. Built for the person who needs the answer at 7pm on a Friday.
White-glove onboarding
We import your customers, set up your pricing, embed the widget, run a test booking with you — before you go live, not after.
Ready to fill more lanes?
14-day free trial. No credit card to demo. White-glove onboarding included.