How to track your service costs as a solo beauty pro
Most solo beauty pros can tell you their revenue from last month within a few hundred dollars. Almost none of them can tell you their cost per service within five dollars. That gap matters because your price floor — the minimum you can charge before a service starts losing you money — is not a function of what competitors charge or what feels right for your market. It is a function of what the service actually costs you to deliver. Without a cost-per-service number, every pricing decision and every deposit minimum is a guess calibrated against the wrong variable. This guide covers how to build a cost-per-service ledger, how to update it quarterly as supply prices change, why a 15% rise in color product costs is invisible without per-service cost tracking, and how the cost floor connects directly to your deposit minimums and annual pricing review.
Why revenue is not the number you need
Revenue tells you how much came in. It does not tell you how much of that was profit after materials, time, and overhead. For a solo beauty pro running a cash-simple business — no employees, one chair, no inventory beyond supplies — the distinction feels smaller than it is. Payroll is not a factor. Rent is usually fixed. How much more complicated can it really get?
The answer is that cost-per-service erosion is the most common financial blind spot in solo beauty businesses because it happens gradually, it does not produce a visible event, and it feels like something else when it does appear. A solo colorist whose service price has been $145 for three years has likely watched her supply costs rise 20–30% in that time — salon-grade color lines, developer, toner, foil, and glove costs have all moved meaningfully since 2022. If she has not tracked cost per service, that increase shows up not as a supply cost line in a ledger but as a vague sense that money does not stretch as far as it used to, or as a slightly lower end-of-month balance that she attributes to booking fewer clients or spending more on personal expenses, when the actual cause is a material cost floor that has risen $18 per service over three years without a single visible signal.
Revenue also cannot tell you which services to prioritize, which services to reprice, and which services to stop offering. A full highlight set at $200 looks better than a brow tint and wax at $45 when you compare dollar values. But if the highlight set takes 2.5 hours and the brow service takes 25 minutes, the highlight set is producing $80/hour and the brow service is producing $108/hour — before you account for material costs, which skew even further against the highlight set because color services carry $15–$30 in materials per appointment while brow services carry $3–$6. The revenue comparison points to the wrong service. The cost-per-service comparison points to the right one.
Cost per service is not a complex accounting concept. It is a straightforward calculation with two inputs — material cost and time cost — that takes about ten minutes per service to set up and fifteen minutes per quarter to update. The difficulty is not in the math. It is in the habit of doing it at all, because revenue feels like the number that matters and cost per service feels like a refinement that can wait. It cannot wait. By the time the margin erosion becomes visible in your bank balance, it has been running for twelve to twenty-four months.
The cost floor formula
The cost floor for any service is the minimum price at which the service does not cost you money to perform. Anything below this number means you are effectively paying to do the work — your materials and time are not fully covered. The formula has two components:
Cost floor = (material cost × 1.30) + (service minutes ÷ 60 × effective hourly rate)
The material cost component covers the supplies you consume in delivering the service — color, developer, toner, gloves, foil, bowls, brushes, nail gel, lash adhesive, brow tint, wax, applicators, and any other product that is consumed or allocated to that appointment. The 1.30 multiplier adds 30% on top of the direct material cost to account for waste, breakage, overmixing, packaging, sanitation supplies, and general overhead that does not attach to a specific appointment but is still consumed by your service delivery.
The time cost component covers the value of the chair-time you spend on the service. Your effective hourly rate is not what you charge — it is what you would need to earn per billable hour to meet your income target. If your target is $80,000 per year and you work 46 weeks with 30 billable service hours per week, your effective hourly rate target is $80,000 ÷ (46 × 30) = $58/hour. If your price is currently producing $72/hour based on your last 90-day revenue, your effective rate is $72. Use the higher number — either your actual rate if it is above target, or your target rate if your current rate is below it. The cost floor should represent the floor you want, not the floor you are accidentally already below.
A worked example: a full color service (base + gloss) that takes 90 minutes with $18 in direct materials. Cost floor = ($18 × 1.30) + (90 ÷ 60 × $72) = $23.40 + $108 = $131.40. If you are charging $135 for this service, you are $3.60 above your cost floor. That is a very thin margin — $3.60 per appointment is $3.60, not 2.6% of $135 in profit percentage terms. Any material cost increase of more than $2.77 per service (the point where your $3.60 buffer disappears with the 1.30 multiplier applied) puts you below the floor. A 15% rise in color product costs on $18 of materials is $2.70 more per service — which after the 1.30 multiplier becomes $3.51 more in cost floor — which exceeds your $3.60 buffer at a cost increase of only $2.77/service. You are one supply-line price increase away from this service costing you money to perform.
This is why tracking cost per service matters and why the annual pricing review cannot be done reliably without the cost floor as a current input. The number changes every time your supply prices change. If you only revisit it annually, you are flying blind for twelve months.
Material cost by service vertical
What counts as material cost depends on your vertical. The rule is to include every product that is consumed or allocated to a specific appointment, and exclude products that are purchased once and used across hundreds of appointments (towel sets, mirrors, tools with indefinite lifespans). Ambiguous cases — items that are consumed relatively quickly but are not tied to a specific appointment — belong in the 1.30 overhead multiplier, not the direct material cost.
Colorists: Direct material cost includes color product (amount used per service, priced per gram or per tube depending on your system), developer (volume and amount per application), toner or gloss, foil (sheets per foil set), mixing bowls and brushes allocated per use if disposable, and barrier cream. A full balayage with toner runs $14–$22 in direct materials depending on hair length and product line. A root touch-up is $8–$13. A full color correction service (multiple sessions of lightener) can run $22–$40 per session in materials. If you do not weigh your product per service and multiply by unit cost, you are guessing at a number that changes every time your supplier updates their pricing.
Nail techs: Direct material cost includes gel (builder and color), base and top coat, prep products (dehydrator, primer), nail tips or forms if used, nail file and buffer (allocated per client if used on a per-client basis), and cuticle oil if included. A gel manicure runs $3–$6 in direct materials. A full gel set with tips or extensions runs $5–$10. Nail art with foils, chrome, or dimensional elements adds $2–$8 per set. The material cost differential between a simple gel mani and a detailed nail art set is meaningful enough to price them separately — many nail techs price them the same, which means nail art appointments produce below-floor revenue per service.
Lash artists: Direct material cost includes lash extensions (individual lashes or fans, priced per tray with an estimated number of applications per tray), adhesive (cyanoacrylate lash glue has a shelf life of 4–6 weeks after opening, so the cost calculation includes wastage from partially-used bottles), under-eye patches, micropore tape, and tweezers if allocated per client as disposables. A classic full set runs $12–$18 in direct materials. A volume set with premade fans runs $15–$22. A hybrid set falls in between. The adhesive allocation is the most underestimated material cost in lash services because lash artists often calculate cost based on uses per bottle at full use, when actually a bottle that is opened and not used within its adhesive window is partially wasted.
Brow artists: Direct material cost includes tint (allocated per service, priced per gram used from the tube), developer, wax (hard or soft, priced per gram allocated), wax strips if used, pre- and post-wax care products, and thread if you offer threading. A tint and shape service runs $3–$6 in direct materials. Brow lamination adds $6–$10. Henna brows run $8–$14 due to higher product cost per service. Brow services have among the lowest material cost per service of any beauty vertical, which is why their revenue-per-hour is high when priced correctly — but only if you track the material cost and price against it rather than by feel.
Mobile groomers: Direct material cost includes shampoo and conditioner (allocated by coat type and body size), grooming spray, blade wash and lubricant, ear cleaning solution, nail grinding disc or clipper blade wear allocation, and any per-appointment disposables (gloves, aprons if disposable). A basic groom runs $6–$14 in direct materials depending on dog size and coat type. A full groom on a large double-coated breed runs $12–$22. Mobile groomers also carry fuel cost as a direct service cost, which most mobile pros either exclude from the service cost calculation or track separately — but fuel is a direct cost of delivering the service and belongs in the cost floor either as a direct material or as a geographic surcharge built into pricing.
The 1.30 multiplier: what it covers and why 30%
The 1.30 multiplier adds 30% on top of direct material cost to account for the supplies and overhead that support service delivery but do not attach cleanly to a specific appointment. The 30% figure is not arbitrary — it reflects the average overhead burden on material costs in a solo service business with no employees and no retail inventory.
What the 30% covers: waste and overmixing (color mixed in excess of what was used, lash glue opened and not fully consumed before the adhesive window closes, nail product applied on the brush that does not transfer), sanitation supplies allocated per appointment (disinfectant spray, alcohol wipes, barbicide solution, cape laundering cost), tool depreciation allocated per service (clipper blade wear, shears resharpening interval, pedicure drill bit replacement), packaging consumed per client (client aftercare kits if provided, product samples, business cards or printed follow-up materials), and general supplies consumed too quickly to calculate per-service but too specifically tied to service delivery to call overhead (cotton rounds, brushes with limited lifespans, mixing bowls replaced after breakage).
Is 30% always the right number? Not exactly. It is a reasonable starting default that holds well for most beauty service verticals. Color services often run closer to 25–28% overhead because the direct material cost is already higher and the overhead burden does not scale proportionally. Lash services may run higher than 30% because adhesive wastage is a larger fraction of direct cost than in other verticals. Brow services may run lower because direct materials are cheap and overhead is minimal. For the purpose of building your ledger, start with 1.30 and adjust the multiplier by vertical based on your own experience once you have been tracking for two full quarters. The error from using 1.30 uniformly is much smaller than the error from not tracking material cost at all.
Adding time cost to the floor
Material cost is only half of the cost floor. The other half is the value of your time. A service that uses $4 in materials but takes two hours is more expensive than a service that uses $20 in materials and takes thirty minutes — but only if you count the time.
Your effective hourly rate is the anchor. There are two ways to calculate it depending on where you are in your business:
If you have 90+ days of booking data: Divide your total service revenue over the last 90 days by the total service hours worked over the same period. If you earned $14,400 in the last 90 days across 200 service hours (not counting consultation time, setup, or cleanup — just time spent in chair on a booked client), your effective hourly rate is $72. This is your actual rate, not your target rate. Use this number if it exceeds your income target rate; use the target rate if your actual rate is below it.
If you are newer or resetting: Work backward from your income target. Decide what annual income you want after expenses. Divide by your expected billable weeks (46–50 for full-time, accounting for vacation and illness). Divide again by your expected weekly service hours. If you want $65,000 per year, work 47 weeks, and average 28 service hours per week, your target effective hourly rate is $65,000 ÷ (47 × 28) = $49.38/hour. Round to $50 for simplicity and use that as your effective rate.
The time cost calculation is: service minutes ÷ 60 × effective hourly rate. A 75-minute service at $72/hour = 1.25 × $72 = $90 in time cost. Add that to your material cost component and you have the full cost floor.
One clarification: the time cost in the cost floor calculation is not about profit margin above cost. It is about making sure your price covers the minimum value of your time. If you set your effective rate at $72 and your cost floor calculation produces $131 for a 90-minute service, a price of $131 does not leave you with a meaningful margin above time cost — it leaves you with exactly the minimum value of your time plus material recovery. Your actual target price should be above the cost floor by whatever margin your market and demand signal will support. The cost floor is the floor, not the target.
Building the cost-per-service ledger
The cost-per-service ledger is a simple document — a spreadsheet with five columns per service — that you set up once and update quarterly. It does not require accounting software, a bookkeeping subscription, or a separate app. A Google Sheet or an Apple Numbers file works. The goal is a reference document you can open in ninety seconds to answer "what is my cost floor for this service right now?"
The five columns per service:
Service name and duration. List each distinct service offering with its expected duration in minutes. Be specific — "full balayage 180 min" and "root touch-up 60 min" are different entries, not variations of the same entry. If service duration varies by client (a 45-minute cut for shorter hair vs a 60-minute cut for longer hair), use the average or create two entries. Imprecise duration is one of the most common reasons cost floors are calculated incorrectly.
Direct material cost. List the materials consumed per service with unit costs. Color services: grams of product used × cost per gram + developer amount + foil sheets + any additional product. Nail services: gel product allocated + base + top + tips or forms if used + prep products. The sum of all line items is your direct material cost. Keep this column in as much detail as your supply invoices allow. If your product line bills by tube (not by gram), estimate average uses per tube from your own throughput, divide the tube cost by that number, and use the per-use cost.
Adjusted material cost (direct × 1.30). This is the direct material cost with the overhead multiplier applied. Once you have decided to adjust the multiplier by vertical (see above), enter the adjusted multiplier here. For initial setup, enter the formula as direct cost × 1.30. This column updates automatically when column two updates.
Time cost. Service minutes ÷ 60 × your effective hourly rate. Lock the effective hourly rate as a constant in a reference cell at the top of the sheet rather than entering it per row — so when you update your effective rate (quarterly or after a price increase), every time cost entry updates in one cell change.
Cost floor and current price. Sum of adjusted material cost and time cost, alongside your current listed price. The gap between the two is your per-service contribution above cost floor — the margin available for profit, savings, and business investment. A negative gap means you are below the floor on that service.
Initial setup takes 60–90 minutes for a pro with 5–8 distinct service offerings. The hardest part is the first pass at direct material cost, because most pros have never broken a service down into product amounts with unit costs attached. Once you have done it for the first service, the remainder follow the same pattern and go faster. If you have recent supply invoices, use those unit costs — your actual purchase price, not the list price you see on the product website. Booth renters often buy through their salon at a different price point than direct from the distributor. Use what you actually pay.
The quarterly cost review
The cost-per-service ledger is only useful if it stays current. A ledger built on your supply costs from eighteen months ago is measuring a business that no longer exists — the number it produces for your cost floor is wrong by however much your material costs have moved in that time.
The quarterly cost review is a 15–20 minute session on the first Monday of each new quarter (January, April, July, October) that answers one question: have my supply costs changed since the last update? The process:
Pull your most recent supply invoices for the quarter. For each product in your direct material cost column, check whether the unit cost has changed. If you buy salon-grade color at $14.50 per tube and this quarter's invoice shows $15.20 per tube, that is a 4.8% increase. Update the unit cost in the ledger. Every service that uses that product will have its direct material cost recalculate automatically if your ledger is built with formulas.
After updating unit costs, look at the cost floor and current price gap column. Did any services move materially closer to or below their cost floor? If a service that was $8 above its cost floor is now $3 above it, that service is on the watch list for the next price increase. If a service has crossed below its floor, that is not a quarterly note — that is an immediate repricing trigger regardless of where you are in the annual pricing cycle.
Also update your effective hourly rate quarterly if your pricing has changed. If you raised prices in the last quarter, recalculate your 90-day revenue per billable hour and update the effective rate cell. This recalculates all time costs in the ledger at the new rate, which gives you an updated floor under the new pricing environment.
The quarterly review is not a decision session — it is a measurement session. You are recording what changed, not deciding what to do about it. The decision about whether to reprice comes at the annual pricing review, or immediately if a service has crossed below floor. The quarterly review is what gives you current data to make that decision from, rather than working from memory or gut feel.
How a 15% supply cost increase becomes invisible without tracking
The compounding effect of untracked supply cost increases is best illustrated with a concrete example across a two-year period.
A solo colorist in early 2024 has the following cost structure on her most common service — a full balayage at $185:
Direct material cost: $16 (color product, developer, toner, foil, gloves). Adjusted material cost (× 1.30): $20.80. Time cost: 150 minutes ÷ 60 × $72/hour = $180. Cost floor: $200.80.
Wait — the cost floor is already above the current price of $185. This colorist is already below her cost floor on her most popular service, and she has never calculated this number, so she does not know it. But let us continue forward and assume she priced it at $195 instead — a $5.80 buffer above her cost floor of $189.20 (using slightly different assumptions that land her in positive territory).
Over the following two years, her color product supplier raises prices four times: 3% in Q2 2024, 4% in Q4 2024, 5% in Q2 2025, and 3% in Q4 2025. The cumulative effect on her $16 direct material cost:
After Q2 2024 (+3%): $16.48. After Q4 2024 (+4%): $17.14. After Q2 2025 (+5%): $18.00. After Q4 2025 (+3%): $18.54. Total increase: $2.54 per service, which is 15.9% over two years.
Without tracking, this $2.54 increase in direct material cost does not appear anywhere in her revenue. Her Stripe dashboard still shows $195 per full balayage. Her monthly deposit totals look the same. But her adjusted material cost has risen from ($16 × 1.30 = $20.80) to ($18.54 × 1.30 = $24.10) — an increase of $3.30 per service after the overhead multiplier. Her cost floor has risen from $189.20 to $192.50. Her buffer above floor has dropped from $5.80 to $2.50.
She does 28 full balayage services per month. The $3.30 increase in per-service cost is $92.40 per month, or $1,108.80 per year. That is money she is earning but not keeping — it is now going to the supplier instead. The total two-year cost of not tracking: $2,217.60.
She never noticed because no single invoice was dramatically different. The 3%, 4%, 5%, 3% increases happened over eight quarters. She may have noticed the invoices looked "a little higher" but attributed it to using more product or ordering more frequently. The signal was there but it was too slow to trigger an alarm without a baseline to compare against.
The cost-per-service ledger is what creates the baseline. With it, the Q2 2024 invoice that shows $16.48 instead of $16.00 is a 3% line item change that prompts a note — "color product up 3%, cost floor moved up $0.62, buffer down to $5.18." Four notes across eight quarters, each taking two minutes to record, and she knows exactly where she stands. Without it, the $2,217 disappears into the operational noise of two years of running a business.
From cost floor to deposit minimum
Your deposit minimum for any service should be set relative to your cost floor, not relative to a round number or what feels like a reasonable ask. The deposit serves two functions: it reduces no-show probability by creating a financial commitment before the appointment day, and it compensates you partially (or fully, in the case of a no-show inside the deposit-forfeiture window) if the client does not appear.
For the deposit to serve its compensation function, it needs to cover at least your material cost for the service — the supplies you will order, prepare, or allocate for that appointment whether the client shows or not. This is your minimum deposit floor: the adjusted material cost ($22.10 for the balayage in the example above).
For most services, the standard deposit target is 25–35% of the service price. For a $195 balayage, that is $49–$68. The adjusted material cost of $24.10 is below this range, which means a deposit set at the standard 25% ($48.75) already covers more than the material cost. That is the right relationship — the deposit should be well above the material cost floor, not just at or below it.
Where the deposit math breaks down is when a pro sets deposits by feel rather than by calculation. Common results: a $25 flat deposit on a $195 service (12.8% — well below any meaningful compensation for a no-show); a $0 deposit on a consultation that requires pre-ordered materials; a deposit on color services but not on cut services, where the time cost of a no-show cut appointment ($72/hour × 1 hour = $72) is actually substantial even without material cost.
The connection between cost floor and deposit minimum also clarifies how to price elevated same-day deposits — a topic covered in the walk-in and same-day request guide. Same-day slots have zero fill probability if the client ghosts, which changes the deposit-to-risk ratio. On an advance booking, a ghosted slot has some probability of being filled if you have a waitlist or can reach a flexible client. On a same-day slot, there is no fill probability. The deposit for a same-day slot therefore needs to compensate for the full slot, not just cover materials — which is why same-day deposits should be 50–75% of the service price rather than the standard 25–35%. Without the cost floor calculation, this reasoning is hard to anchor to a specific number. With it, you can calculate exactly what deposit level covers materials plus some fraction of the time cost, and price the same-day deposit at the point where you are adequately compensated for the risk of the slot being unrecoverable.
Feeding the cost floor into the annual pricing review
The annual pricing review uses four data inputs to make the annual repricing decision: 90-day retention rate, revenue-per-hour trend, advance booking window, and cost floor per service. Three of those four inputs come from booking records. One — the cost floor — comes from the cost-per-service ledger.
Without the ledger, the annual pricing review can still use retention rate, revenue per hour, and booking window to determine whether a price increase is safe (demand supports it) and what percentage to target (based on market rate comparison or demand signal method). But it cannot use the cost floor method — the approach that sets the increase amount by closing the gap between current price and cost floor plus a buffer. This is the most defensible repricing method because it is anchored in actual cost data rather than market feel or a percentage guess.
The cost floor method from the annual pricing review: if your service price is below your cost floor (or within a few dollars of it), the increase is not discretionary — it is a financial necessity, and the amount of the increase is the gap between current price and cost floor plus a 10% buffer for the next supply cost cycle. If your cost floor on a service is $192 and your current price is $185, the cost-floor-method increase is to $192 + 10% = $211. That is a $26 increase — larger than you would set by feel, but exactly the number required to put you in a sound position relative to cost.
The cost floor also prevents underestimating the urgency of a price increase. Revenue-per-hour and retention signals can both look healthy at the same time as a service's cost floor is being eroded by supply cost increases. A colorist whose retention is 78% and whose RPH looks flat on a trailing basis can still be running below cost floor on her highest-material-cost services. Without the ledger, there is no way to see that signal. With it, the Q4 quarterly review is the moment the data surfaces and the annual pricing review (or an earlier repricing trigger) can act on it.
How deposit-first booking protects the floor when costs rise
Cost floor tracking tells you what your services cost to deliver. But what happens in the interval between a cost increase and a price increase? Supply costs move quarterly. Most solo pros increase service prices annually at most, and often less frequently than that. There is always a window where costs have risen but prices have not yet followed.
Deposit-first booking is what protects your revenue floor during this window. When a client pays a deposit at checkout before the appointment day, two things happen that do not happen with DM-first verbal confirms: first, you have cash in hand that covers at least the material cost of the service before you have ordered or prepared a single thing. Second, the show rate is 15–22 percentage points higher than a verbal-confirm appointment. Both of these directly protect the floor in a period of rising costs.
The no-show scenario under DM-first booking with rising material costs: a client verbally confirms a color service where you have now ordered $18.54 in materials (up from $16.00 eighteen months ago), and they ghost. You absorb the full $24.10 in adjusted material cost with no compensation. If this happens three times per month — a low estimate for a fully-booked colorist running verbal confirms — that is $72.30 per month in uncompensated material cost, or $867.60 per year. In a period when your supply costs are already rising, adding this uncompensated loss layer is a significant compounding drag.
The same scenario under deposit-first booking: the client's deposit covered the material cost before the appointment. Even in a no-show, your adjusted material cost is covered. The show rate is higher, which reduces the frequency of the no-show scenario. And when you raise prices to reflect the updated cost floor, the deposit amount updates proportionally (since your deposit is set as a percentage of service price), so the protection level scales automatically.
The combination of a current cost-per-service ledger and deposit-first booking creates two complementary floors: the ledger tells you what the floor is and when it moves; the deposit ensures the floor holds even on no-shows in the gap period between a cost increase and your next price update. Neither one is sufficient alone. The ledger without deposit enforcement still exposes you to no-show losses above material cost on every DM-confirm appointment. Deposit enforcement without the ledger means your deposit amounts are set by feel and may not actually cover the material cost floor they are supposed to protect.
Six common mistakes in tracking service costs
Estimating material cost without checking invoices. "I think I use about half a tube per balayage, and tubes are around $14, so that's about $7." This is a common starting estimate that is often wrong by 30–50%. Color services vary significantly in product usage by hair length, density, and target result. Estimating from memory rather than from a measured pour at a known unit cost produces a number that feels right but does not catch cost floor erosion. Use your actual invoices with actual unit costs, and if your usage varies significantly by service, track the variance separately.
Excluding time cost from the floor. The most common simplification is to calculate material cost only and treat it as the cost floor. This produces a number that tells you whether a service covers its supply costs but says nothing about whether it covers the value of your time. A service that covers $18 in materials but produces $35/hour in effective rate while your target is $72/hour is a service that is losing you the equivalent of $37/hour in opportunity cost. It looks profitable on a material-cost-only calculation. It is not.
Not separating services with meaningfully different material costs. Listing "gel nails" as a single entry when gel manicure, gel with tips, and gel with art and extensions have materially different material cost structures collapses important distinctions. A gel manicure at $55 with $4 in materials produces a very different floor than a gel set with custom art at $120 with $14 in materials. They may have similar margins in dollar terms, but pricing them separately lets you optimize each one and catch floor erosion on the higher-cost services first.
Not updating the effective hourly rate after a price increase. If you raise your prices in October and do not update the effective rate cell in your ledger until the next annual review, your time cost calculations for the next twelve months are based on a stale rate. Updating the effective rate is a one-cell change that takes thirty seconds. Add it to your price increase checklist — update your booking page, update your deposit amounts, update your cost floor ledger effective rate. Three updates, all on the same day.
Using the 1.30 multiplier as a fixed rule without calibrating it. For most verticals most of the time, 1.30 is a reasonable default. But lash artists with high adhesive wastage, mobile groomers with significant fuel cost, and PMU artists with expensive pigment per session may find their real overhead multiplier is closer to 1.40–1.50 on specific services. Run your ledger for two full quarters with 1.30, then compare your adjusted material cost calculation against your actual supply spend on those services. If the multiplier is consistently underestimating, adjust it for the affected services.
Doing the initial setup and never updating. A cost-per-service ledger built on January supply costs and never updated is not a cost-per-service ledger — it is a historical document. The fifteen-minute quarterly review is what makes the ledger a living tool rather than a snapshot. If the quarterly review feels like too much friction, set a calendar reminder for the first Monday of each quarter with a fifteen-minute block labeled "cost floor check." Three calendar entries per year (Q2, Q3, Q4) cover the between-annual-review updates. The annual pricing review month (Q1 is a common pick) doubles as a cost review month and is already on the calendar.
Three-year compound comparison
The long-run impact of tracking versus not tracking cost per service runs through three channels: undetected margin erosion from supply cost increases, suboptimal deposit minimums that leave material cost unprotected on no-shows, and delayed or undersized price increases because the cost floor input is missing from the annual review.
Colorist A does not track cost per service. She prices by market comparison and gut feel. Her full balayage has been $195 for three years. Supply costs have increased 15% over that period, but she does not have a ledger to surface this. Her deposit is $45 (a round number she picked three years ago). She carries a verbal-confirm booking model for about 30% of her appointments, because she does not have a deposit-first booking link on her IG bio.
Year 1: 28 balayage appointments per month at $195, 8% no-show rate on verbal confirms (3 per month × 12 months = 36 no-show appointments). On the 36 no-shows, she has already ordered materials. Net loss on no-shows: 36 × $24.10 (adjusted material cost, already rising due to price increases she has not tracked) minus 36 × $45 (deposit collected on deposit clients) — but her deposit-first coverage is only 70% of appointments, so she only has deposits on ~25 of those 36 no-shows. Eleven no-show appointments with no deposit: 11 × $24.10 = $265.10 in uncompensated material cost. Plus the untracked cost floor erosion across all 336 annual balayage appointments: by Q4 of year 1, the cost floor is already $3.51 higher than at year start (the 15% rise amortized over 3 years). Year 1 annual cost floor erosion: 336 × $1.17 = $393.12.
Year 3: Supply costs have risen the full 15%. Colorist A still charges $195. Her material cost per service is now $24.10 (adjusted), up from $20.80. Her cost floor has risen from the original $201 to $204.10. She has been below her cost floor for the past 18 months without knowing it — her $195 price is $9.10 below floor. Annual gap loss on 336 appointments: 336 × $9.10 = $3,057.60. She still has no annual pricing review process and no cost floor ledger to trigger a repricing decision.
Three-year cumulative for Colorist A: approximately $5,200 in combined margin erosion (undetected supply cost increases below the floor), uncompensated no-show material costs, and delayed repricing losses.
Colorist B builds her cost-per-service ledger in Q1 of year 1. She discovers on the first pass that her original balayage at $185 was already below cost floor. She reprices to $200 at launch using the cost floor method. She sets her deposit at 30% ($60). She runs quarterly reviews: Q2 year 1 shows a 3% material cost increase — she notes it, the buffer narrows but remains positive. Q4 year 1 shows another 4% — she notes it, plans to address at the year-1 annual review. At her year-1 annual review, the cost floor method calculation points to a $215 price — a $15 increase. Her 90-day retention is 76% and her booking window is 3.5 weeks — both signal that the increase is supportable. She raises to $215.
By year 3, after tracking and responding to the full 15% supply cost increase through two annual review cycles (year 1: $185→$200→$215; year 2: $215→$228 based on continued cost tracking; year 3: holds at $228, buffer is $19 above the now-$209 cost floor), she is well above her cost floor. Her deposit is now $68 (30% of $228). She has deposit-first booking on every appointment, so her no-show material costs are 100% covered. Her annual revenue at 28 appointments per month is $336 × $228 = $76,608.
Colorist A's year-3 revenue on the same 28 monthly appointments at $195: $195 × 336 = $65,520. She is also $9.10 below cost floor per service, meaning approximately $3,058 of that $65,520 is cost recovery, not profit.
Three-year revenue gap: approximately $19,000 to $23,000, depending on the precise timing of Colorist B's repricing cycles and the assumed supply cost trajectory. The entire gap is attributable to a 60-minute setup session, four 15-minute quarterly updates per year, and one annual pricing review session that uses the cost floor as its primary input.
Three operational checklists
One-time ledger setup (60–90 min)
- List all current service offerings with their standard duration in minutes
- Pull most recent supply invoices; record unit costs for every product used in service delivery
- For each service, calculate direct material cost from amounts used × unit costs
- Apply the 1.30 multiplier to get adjusted material cost per service
- Calculate your effective hourly rate from last 90 days (revenue ÷ service hours) or set from income target
- Enter effective hourly rate as a locked reference cell; calculate time cost per service row
- Sum adjusted material cost + time cost = cost floor per service
- Add current listed price column and calculate the gap (price minus cost floor)
- Flag any service where the gap is negative (below floor) or less than 5% of current price (at risk)
- If any services are below floor, schedule a repricing session immediately — do not wait for the annual review
Quarterly cost review (15–20 min, first Monday of each quarter)
- Pull supply invoices from the last quarter for every product in the material cost column
- Check each unit cost against the ledger — update any that have changed
- Note the percentage change for each updated item (useful for annual pattern recognition)
- Review the cost floor gap column — has any service moved below or within 5% of floor?
- If yes, flag for the next annual review (or trigger an early repricing decision if the gap is negative)
- Update effective hourly rate if your pricing or booking volume has changed materially
- Record the review date in the ledger for audit purposes
Annual pricing review cost-floor input checklist (30 min, ahead of the annual review session)
- Confirm all quarterly reviews completed and unit costs current
- Calculate the cost floor gap for each service at the current price
- Identify which services are below floor (mandatory repricing candidates), within 10% of floor (strong repricing candidates), or more than 15% above floor (stable — can hold if other signals warrant)
- For below-floor services: calculate the cost-floor-method increase (gap + 10% buffer)
- For at-risk services: cross-reference with retention rate and booking window to determine whether a preemptive increase is warranted or whether a monitoring-only response is sufficient
- Bring the cost floor input list into the annual pricing review session as the first agenda item — it is the only input that produces a mandatory repricing signal regardless of other metrics
- After the repricing decision is made and implemented, update the cost floor ledger effective rate and verify deposit amounts are still set at or above adjusted material cost
Hold the chair before the no-show does.
$9/mo flat. Deposits straight to your Stripe. Early access is 90 days free.