Seasonal site management for campgrounds

SaaSWeb1 monthNext.jsSupabaseStripe

The idea

Family campgrounds make most of their money not from weekend transients but from seasonal campers who park a trailer from May to October for 2,000 to 6,000 USD. The reservation platforms (Campspot, and the OTA-style booking engines) are built for nightly stays, take commissions, and treat a seasonal contract as an afterthought. So the seasonal side, the actual core business, runs on index cards: renewals by mailed letter, installment payments in a ledger book, and electric meters read onto a clipboard and billed by calculator.

The wedge is the meter-to-invoice flow, which nothing affordable does today: a walk-order reading run on the owner’s phone that turns straight into Stripe invoices. Around it, the annual rhythm: January renewal letters as accept-links with autopay setup, and a waitlist that fills vacated sites without a Facebook post.

Who pays

The campground owner pays 79 USD/month flat, and “no commissions” is the entire pitch to an audience that resents booking-platform take rates viscerally. A 60-seasonal-site campground turns over 200k USD-plus a season; recovering under-billed electric alone (a common, known leak) covers the subscription. Distribution: state campground owner associations (CAMP conferences), ARVC, and owner Facebook groups where commission complaints and “how do you bill electric” threads recur constantly.

MVP scope

  • Sites, campers, and seasonal contracts with installment autopay via Stripe
  • Walk-order meter reading runs generating electric invoices, with regression flagging
  • January renewal offers via signed accept-links with stored acknowledgements
  • Site-matched waitlist with timed offers
  • Payment status dashboard with reminders
  • Skip for v1: nightly/transient reservations, POS/camp store, gate access hardware, dynamic pricing, camper mobile app
// Build prompt — paste into Cursor / Claude Code / Lovable / Bolt
Build SeasonSite, a web app for family-run campgrounds to manage seasonal campers. Stack: Next.js (App Router), Supabase (Postgres, Auth, RLS), Stripe for installment autopay and invoices. Magic-link auth for owners; campers interact via signed links.

Data model: Sites (number, section, hookups, seasonal rate, meter serial), Campers (contact, rig details, site), Contracts (season year, rate, payment plan: in full, or 4-6 installments via Stripe subscription schedules ending before season start), MeterReadings, Waitlist entries (with site-type preference and specific-site requests), Documents (rules acknowledgement, insurance).

The meter-to-invoice flow, built first: owner walks the campground with their phone, opens a reading run listing every metered site in walk order with the previous reading shown, and types the new kWh number (flag readings lower than the previous). Closing the run computes usage x the owner-set rate per kWh and generates a Stripe invoice per camper, autopay-charged where opted in. Monthly or owner-triggered.

Renewals: each January, generate renewal offers for current seasonal campers at next season's rate, sent as a signed link where the camper accepts the contract terms (checkbox acknowledgement stored with timestamp) and sets up their payment plan. A dashboard tracks accepted/declined/silent, with reminder emails. Declined or vacated sites surface matching waitlist entries.

Waitlist: public signup form; entries matched by site preference when a site opens, offered by email with 7-day expiry.

Pages: site map/list, camper profiles, contracts and payment status, meter run, waitlist, renewal dashboard, settings.

Pricing: 79 USD/month flat, no commissions ever, stated loudly on the pricing page.

// More SaaS ideas