Skip to content

Who We Help · Pool & Spa Contractors · Bookkeeping

Pool and spa contractor bookkeeping: three businesses in one set of books

A pool company is really three businesses — construction, recurring service and retail — and each one recognizes revenue differently. Build deposits are liabilities, prepaid opening packages are deferred revenue, and chemicals on the shelf are inventory. We keep the three streams separate in the books so the April deposit rush never reads as April profit, and so you can see which of the three actually makes money.

By the AnalytIQ Accounting team · Last reviewed: August 12, 2026

Crew constructing an inground swimming pool in a residential backyard

One company, three revenue engines

A pool and spa business earns money three different ways, and each one needs its own accounting treatment. Builds are construction contracts: a deposit at signing, draws at excavation, shell, plumbing and equipment, and a final payment at handover. Service is recurring: spring openings, fall closings, weekly chemical visits and repair calls in between. Retail is a store: chlorine, salt, test kits, pumps, heaters and hot tubs sold over a counter or out of a showroom. When a bookkeeper records all of it as sales on the day money hits the account, the result is a business that looks wildly profitable in May and broke in January, with no way to tell which engine is working.

We set up QuickBooks Online with a chart of accounts built around the three streams — separate income, cost of sales and gross margin for construction, service and retail — so every month closes with three margins instead of one blended number. Our note on how to set up a chart of accounts explains the general principle; for a pool company, the three-way split is the whole point.

StreamHow the money arrivesHow we book it
BuildsDeposit at signing, stage draws, final payment on handoverCustomer deposits liability until each stage is earned; costs tracked by job
Openings, closings, weekly servicePrepaid season packages, per-visit invoices, card payments through route softwarePackages as deferred revenue released per visit; route chemicals as service cost of sales
Chemical and equipment retailPOS sales, hot tub deposits, financing-partner payoutsInventory on the balance sheet, cost of sales on sale, financing fees as a selling cost

Build deposits are liabilities until the work exists

The March deposit rush is the most misleading month in a pool company's year. A signed contract with a deposit produces cash but not income; the pool has not been dug. We post every deposit and draw to a customer deposits account by job and move it to revenue as stages are completed, so the income statement shows what was built rather than what was collected. Stage billing and job costing run together: excavation, the shell (vinyl-liner kit, fibreglass unit or concrete), plumbing, the equipment pad, electrical, coping and decking, and the fence permit each carry a cost line against the job.

There is an HST wrinkle that trips up plenty of builders. HST is not payable on a deposit when it is received; it becomes payable when the deposit is applied against the work. A deposit a customer forfeits is treated as tax-included, so the HST comes out of it rather than on top. We track both events so the GST34 return reflects what happened on each job.

Because a pool is a structure, payments to subcontractors for excavation, concrete, electrical and fencing are construction payments. If more than half of your income comes from construction, those payments belong on T5018 slips at year-end, and a clean job-cost ledger produces them without a scramble.

Service routes: from the field app to the ledger

Most service companies run routes in Skimmer, Jobber or a similar field app, and that app is the true sales record — QuickBooks only sees the payouts. Card payments arrive net of processing fees, often batched across dozens of customers, so we reconcile the app's invoicing report to the processor deposits each month and record the fees as an expense rather than letting revenue quietly shrink.

Prepaid season packages need the same discipline as build deposits. A customer who pays in April for an opening, sixteen weekly visits and a closing has bought services stretching into October; we hold the package as deferred revenue and release it as visits are logged. Chemicals used on route are a cost of service, not a retail sale, and we keep them out of store cost of goods so the two margins stay honest.

Chemical and equipment retail needs a count, not a guess

Chlorine, salt, stabilizer, pumps, filters, salt cells and heaters are inventory, not supplies, and the difference shows up at year-end. A store that expenses every supplier invoice on receipt overstates costs in the months it stocks up and understates them in the months it sells down, and the tax return inherits the distortion. We run inventory through the POS — Lightspeed and Square both handle it well — and reconcile physical counts at the end of the season.

Early-buy programs add a timing layer. Distributors take winter orders for spring delivery with extended payment terms; the stock is inventory when it arrives, the invoice is a payable, and the payment months later is neither. Hot tubs and swim spas bought for the showroom follow the same logic, and a customer deposit on a spa that has not been delivered sits as a liability just like a build deposit. Where you buy from US suppliers in USD, our cross-border tax page for pool contractors covers the border-side records the books need to carry.

What the winter books should tell you

By December the books should answer five questions without a spreadsheet: how much customer money you hold for builds and spas not yet delivered, how much prepaid service is still owed, what stock is on the shelf at cost, what truck and equipment financing comes due before the first opening, and what each of the three streams earned. That is the difference between accrual books and a bank-balance view; our answer on cash versus accrual accounting explains why a seasonal business cannot run on the latter. Our bookkeeping services page describes the monthly close that produces those numbers.

Common questions.

Is a pool build deposit income when I receive it?

No. It is a customer deposit — a liability — until the stage of work it pays for is done. Recording it as revenue makes spring look profitable and autumn look like a loss, and it can put HST on your return before it is due.

Do I need to track inventory for pool chemicals?

Yes. Chemicals and equipment held for resale are inventory, valued at year-end at the lower of cost and market. A season-end count is the minimum; a POS with inventory tracking makes the monthly numbers meaningful.

How do you handle payments that come through Skimmer or Jobber?

The field app is the sales record. We reconcile its invoice report to the net processor deposits each month, book the fees separately, and release prepaid packages as visits are completed.

Related reading

Books that know a deposit from a sale.

Book a consultation and get a plain answer on exactly what applies to you.

Client Reviews

Get a free quote

Request a free quote.

Tell us a little about your business and our team will respond within one business day.

Contact details

How can we help?

Type of enquiry select all that apply

Project information