Skip to main content

Surf Shop and Dive Shop Bookkeeping: Why Your Best Season Can Still Leave You Broke by October

13 min readMike ThriftMike Thrift
Surf Shop and Dive Shop Bookkeeping: Why Your Best Season Can Still Leave You Broke by October

You can sell out every board rental and fill every open-water class in July, watch your bank balance climb to its highest point of the year, and still have to borrow to make rent in November. That is not a pricing problem. It is a bookkeeping problem that is almost unavoidable when you run what looks like one shop but is really six different businesses sharing the same roof.

If you own a surf shop at the beach or a dive center near the quarry, you already know the seasonality in your gut. Ten weeks pay for the other 42. What you may not see in your books is which of your businesses actually made money during those ten weeks, which ones you subsidized without realizing it, and how much of that July cash you already owe for a lesson, trip, or charter you have not delivered yet. Once you split the books the way the business actually operates, those questions answer themselves.

One Roof, Six Businesses

A framework that has circulated for years among dive professionals at the Business of Diving Institute captures the reality well: a local dive center is not one business. It is six. The same holds for almost any coastal surf shop that also teaches, rents, and repairs.

The 3 Ts: What the Customer Came to Buy

Training (Lessons and Certification). This is the school. For a dive shop it is Open Water, Advanced, Rescue. For a surf shop it is group lessons, private coaching, kids' camps, and SUP instruction. You collect money before you deliver, schedule instructors and limited facility time (pool, beach, classroom), and the true cost is instructor labor, not product. The metric that matters is asset utilization — are your instructors, boats, and vans full when the weather window opens, and idle the rest of the time?

Toys (Retail Gear). This is the retail store. Boards, wetsuits, fins, masks, regulators, BCDs, apparel, wax — plus purchasing, merchandising, theft prevention, and sales training. Retail is an inventory game. Cash goes out months before it comes back, and the number that tells the truth is inventory turnover — how many times per year you sell through and replace your stock. A shop carrying $500,000 at cost that sells $350,000 at cost in a year turned 0.7 times and tied up 17 months of cash in inventory sitting on the wall.

Trips and Charters (Experience). This is the travel agency and boat operator. Boat charters, island day trips, seal snorkels, surf safaris. You resell time on the water with thin margins and tight regulations, fronting deposits to captains and resorts long before the last guest pays. Revenue timing and cancellation terms make or break you here.

The 3 Rs: The Support Businesses You Cannot Skip

Rental. This is the car-rental counter. Surfboards, soft-tops, wetsuits, scuba kits, cylinders, GoPro rigs. The question is how many paid days per year each asset actually earns. A board that rents 45 days at $60 grosses $2,700 before wax, repairs, reservation fees, and replacement. If it sits idle 80 percent of the year, it is not a profit center until you prove it is.

Refills and Air (The Fill Station). This is the gas station. Compressor time, nitrox blending, tank inspections. Customers arrive in bunches on Friday afternoon and vanish for a week. You carry fixed costs (compressor maintenance, filters, hydro contracts, electricity) whether you pump 20 fills or 200.

Repair and Maintenance. This is the garage. Regulator servicing, wetsuit repair, ding repair, annual VIPs, board glassing. You need qualified technicians, spare parts, and a clean split between customer-pay and manufacturer-warranty work. It looks small on the P&L until you realize it is why someone trusts you to buy a $900 regulator from you in the first place.

One generic "Sales" account and one "Cost of Goods Sold" bucket cannot tell you whether lessons subsidized retail, or whether rentals covered the compressor that lessons required. Each business has different customers, peak hours, and ways it goes broke.

Why Your Bank Balance Lies: The Deferred Revenue Trap

When a family pays $449 in March for a June open-water course, or $299 for an August kids' surf camp, you have not earned that money when Stripe settles. You have taken on an obligation to deliver instruction and staff the beach in the future. Under accrual accounting and ASC 606, that payment is a liability called Deferred Revenue until you perform.

If you record the $449 as revenue in March, March looks fantastic and June looks like you worked for free. Your P&L will say spring was profitable and summer was thin, exactly when the opposite is true. You may also spend that March cash on spring inventory, then arrive at June short of the cash to payroll the instructors who satisfy the obligation you already spent.

The same applies to lesson packs ("buy 4 privates for $500"), gift cards sold over the holidays, charter deposits collected 60 days before the boat goes out, and seasonal rental passes.

A clean setup:

  1. Create a liability account for each obligation type: Liabilities:Deferred Revenue - Dive Training, Liabilities:Deferred Revenue - Surf Camp, Liabilities:Deferred Revenue - Charters, Liabilities:Deferred Revenue - Gift Cards.
  2. When cash arrives, debit Cash and credit the appropriate Deferred Revenue account. Do not touch revenue.
  3. When you deliver — course weekend completes, camp week ends, charter sails — move it: debit Deferred Revenue, credit the matching earned revenue account like Revenue:Training - Open Water.

Example:

  • March 10: family pays $449 for June OW course. Debit Cash $449 / Credit Deferred Revenue - Dive Training $449.
  • June 14-15: course completes. Debit Deferred Revenue - Dive Training $449 / Credit Revenue:Training - Open Water $449.

If you allow rescheduling or refunds, the liability already shows what you owe. Your balance sheet becomes a to-do list for the summer you promised. You may still file taxes on cash basis if you qualify, but keep management books on accrual. Lenders and landlords assessing whether you can survive until next June want revenue matched to when you earned it.

Split Your Revenue Lines or Fly Blind

Separate revenue and direct costs at the level you make decisions:

Revenue

  • 4010 Training - Group / OW Courses
  • 4020 Training - Private / Specialty
  • 4030 Retail - Hard Goods (boards, regs, BCDs)
  • 4040 Retail - Soft Goods & Apparel
  • 4050 Retail - Accessories (wax, fins, masks)
  • 4060 Rentals - Surf & SUP
  • 4070 Rentals - Dive Kits & Cylinders
  • 4080 Charters & Trips
  • 4090 Refills & Gas
  • 4100 Repair & Maintenance

Direct Costs

  • 5010 COGS: Retail Hard Goods
  • 5020 COGS: Retail Soft Goods
  • 5040 Direct Labor: Instructors & Captains
  • 5050 Direct Costs: Charters (boat, fuel, permits)
  • 5060 Direct Costs: Rentals (parts, reservation fees)
  • 5070 Direct Costs: Refills (filters, electricity)
  • 5080 Direct Costs: Repair (parts, bench time)

Imagine July shows $82,000 in total sales. Without splits you feel good. With splits you might see Training $28,000 at 62 percent gross margin, Retail $22,000 at 38 percent but with $18,000 still tied up in unsold fall wetsuits, Rentals $18,000 at high gross margin minus a mid-summer board replacement cycle, Refills $3,000 barely covering that month's compressor service, and Charters $11,000 that looks thin until you remember you prepaid the captain in May. Only the second version lets you decide whether to add another charter date, mark down apparel earlier, or raise the private lesson rate.

In your POS, enforce item-level mapping so every SKU and lesson type points to one of these accounts with no generic "Misc." bucket. The patterns in the Beancount docs show how to keep that granularity manageable in plain text, even if your POS is not Beancount yet.

Seasonal Cash Flow Is a Math Problem

You do not have a revenue problem. You have a timing problem. Sixty-five to 80 percent of earned revenue can fall in a 12- to 16-week window while occupancy cost hits all 12 months. Totals hide the gap.

Build a 12-month forecast, not an annual budget. Two exercises make it real:

Map cash by month. Export last year's payouts and bucket by revenue line, then layer in when you earned it (move deferred revenue to delivery month) and when you spent to earn it (instructor payroll, charter wholesale, inventory purchased). Most owners find labor clusters in the same summer window while rent hits every month. The forecast answers: how many payrolls can January's cash cover when the beach is empty?

Budget inventory cash separately from P&L. Buying six months of wetsuits in February is not expense until you sell them, but it is cash out today. Add an "Inventory Cash" row that records purchase orders when cash leaves, not when COGS is recognized. This prevents the classic surprise: a profitable July on the P&L followed by a cash crisis in September because you over-bought hard goods that did not turn.

Three ways to bridge the gap once you see it:

  • Offer pre-season instructor retainers booked to prepaid expense and recognized as direct labor only when lessons occur. You lock in talent without pretending February was profitable.
  • Move cash earlier without blanket discounts. Offer value-added early booking (early board selection, guaranteed charter date) that pulls cash forward without training customers to wait for a sale. If you discount, book gross fee and discount separately so you can measure it.
  • Price fills and rentals to cover 12 months of fixed cost in five months of volume. If the compressor costs $4,800 a year whether you sell 1,000 or 4,000 fills, a $12 fill that looks expensive in June is cheap if the alternative is subsidizing it from lesson revenue all winter.

Inventory and Assets That Eat Cash

Retail and the $500K wall. If you carry $500,000 at cost and sell $350,000 at cost, you turned 0.7 times — 17 months of cash tied up. Measure turnover by category. Soft goods should turn 3 to 5 times per year; hard goods often 1.0 to 1.8. Cut tail SKUs, go deeper on top movers, and use pre-orders for big-ticket items. Cycle-count high-value regs monthly.

Rental fleet and compressor: depreciate the reality. A soft-top that rents 50 days at $65 looks like $3,250 of revenue until you allocate $120 in repairs, $180 in wax and fins, $400 in van and beach labor, and a two-to-three-year rentable life. If you expense purchases when you buy them, off-season looks worse than it is and in-season looks better than it is.

Capitalize fleet by cohort (Assets:Rental Fleet - Soft Tops 2025) and depreciate over 24 to 36 months for surf and 36 to 60 for dive. Book early retirements as loss on disposal. Capitalize the compressor over 7 to 10 years and book filters and lab analysis as direct costs of refills. The Beancount Fava dashboard shows how those accounts move month to month.

The Five KPIs That Tell the Truth

Summer sales can be up 12 percent while profit falls. Track these monthly:

  • Revenue and gross margin by business line. Not blended. If rentals carry 58 percent gross margin and charters carry 22 percent after wholesale, staffing and marketing should reflect that.
  • Inventory turnover and GMROI by category. Turnover = COGS / Average Inventory. GMROI = Gross Margin / Average Inventory. A GMROI below 1.0 means the category returned less profit than you invested to stock it.
  • Revenue per available rental day. Total rental revenue divided by units × season days. A surf fleet at $18 per available day in a 90-day season is underutilized; at $42 it may be priced right or under-fleeted.
  • Instructor and boat utilization. Paid instruction hours versus available hours; charter seats filled versus offered. Sustained utilization above 85 percent in July signals you are underpriced or leaving demand on the table.
  • Deferred revenue trend. Month-end deferred revenue is the work you have been paid to do but have not done. If it is 40 percent higher this March than last March, next summer's cash and the claim on your time are both up.

Review these before buying season in the fall, not when your accountant mentions turnover the following spring.

Common Bookkeeping Mistakes

Treating deposits as revenue on day one. You invert profit and make buying decisions backwards.

One bucket for all sales. The fix is the chart of accounts above plus POS discipline. Thirty seconds of correct item mapping at the register saves a weekend of reclassification.

Expensing big fleet purchases immediately. This hides this month's investment and flatters next month's replacement. Capitalize and depreciate.

Mixing customer-pay repair with warranty work. Book warranty parts and labor as receivable from the manufacturer until reimbursed, not as revenue or a write-off.

Getting sales tax wrong. Lessons are generally non-taxable services, rentals of tangible property are taxable, retail is taxable, and repair may be taxable on parts but not labor depending on the state. Flag taxability at the SKU level, reconcile collected tax monthly to your liability account, and never spend sales-tax cash you are holding for the state.

Commingling restricted cash. If charter deposits and sales-tax payable sit in the same checking account as operating cash, your balance lies. Keep a weekly cash position that subtracts deferred revenue and sales-tax payable from available cash so you see what is actually spendable.

Keep Your Books Aligned With How You Actually Work

A surf or dive shop is seasonal by nature. You cannot change the ocean or the school calendar, but you can change whether your books help you through them or hide them from you.

Start with three moves this month: split your revenue accounts so you can see each of the six businesses separately, move all prepayments to deferred revenue and recognize them only when you deliver, and build a 12-month forecast that shows inventory cash separately from expense. Run the five KPIs at month-end and you will know — before Labor Day — whether the summer you just had funds a comfortable winter or a scramble you will repeat next year.

Simplify Your Financial Management

As you balance lessons, rentals, retail, repairs, and trips across a short earning season, maintaining clear financial records is what turns a busy summer into a healthy year. Beancount.io offers plain-text accounting that is transparent, version-controlled, and AI-ready — perfect for a multi-revenue shop that needs to see each business line clearly without black boxes or vendor lock-in. Get started for free and see why operators who outgrow spreadsheet chaos switch to plain-text accounting.

Share this article