Try this on a real business
Open a seeded business in your trade. Nine jobs on the pipeline, a quote sent and viewed, a deposit paid, and an invoice already overdue.
Open the demo businessNo card, no form. Sign in later and everything you built stays on the same account.
Consumer of the materials, retailer of the fixtures: the California tax rule that decides what your job cost
Your supplier charged tax on the ductwork and on the rooftop unit. You installed both. Your customer got one lump sum price with no tax line anywhere on it. Your bookkeeper wants to know whether you are a retailer, and your accountant says it depends. Nobody in that chain is wrong.
California does something to construction contractors it does not do to almost anyone else. It taxes you as two different kinds of business, on the same job, on the same delivery truck, decided item by item. On the things you install that become part of the building, you are the consumer, and tax runs on what you paid. On the things you install that stay recognizably themselves, you are the retailer, and tax runs on a selling price, unless your contract is lump sum, in which case it runs on your cost price instead. That is Regulation 1521, and it is the most consistently mispriced rule in the state.
All of it is knowable before you sign. This page is the split, the test that decides which side an item falls on, how the contract form picks your tax base, a worked example with real dates and real dollars, the trap that catches anyone who fabricates what they install, and why the rate is a street address rather than a number in your template.
One job, two tax identities
Regulation 1521 sorts everything you bring to a jobsite into three boxes, and the box decides who you are.
| What you install | Who you are | Tax runs on | What you do about it |
|---|---|---|---|
| Materials | The consumer | Your cost | You pay it when you buy. It is a cost in your price, not a line on your invoice |
| Fixtures | The retailer | The selling price, or the cost price under a lump sum contract | It is a sale you made, and it is reported |
| Machinery and equipment | The seller | The selling price | Sold, not consumed. It never became part of the structure |
Read the first row again, because it is the one that gets priced wrong. When you are the consumer of materials, the tax is not something you collect from the customer. It is something you already paid, and if it is not sitting inside your price it came out of your margin.
The second row is where the arithmetic gets interesting, and where the contract you signed starts making the decisions for you.
Which box an item lands in is a list, not an opinion
The test Regulation 1521 uses is about identity after installation.
A material is something that combines with other things and loses its own identity to become an integral and inseparable part of the finished structure. Poured, nailed, wired in, buried, taped, painted over. It stops being a thing and becomes part of a building.
A fixture is an accessory to the structure that does not lose its identity when it is installed. It is bolted or connected in, it can be pointed at, and if you took it out the building would still be a building with a hole in it.
The pairs inside one trade make the line obvious. The regulation's own lists put ducts on the materials side and an air conditioning unit on the fixture side. They put electric wiring on the materials side and a lighting fixture on the other. The same crew, on the same day, working with a truck that carries both.
The regulation resolves it with lists rather than leaving it to argument, so the hour that actually pays is the one you spend reading your own trade's usual bill of materials against them once. After that, classification stops being a judgment call on any job. Most contractors never do it, which is exactly why it is worth your afternoon.
The contract form picks your tax base, and the invoice cannot change it
Here is the sentence that surprises people. For fixtures, the taxable measure depends on how the contract is written, not on how the invoice is broken out.
- Lump sum contract. You are still the retailer of the fixture, but the measure is the cost price of the fixture. Your markup on it is not in the tax base.
- Contract that states the fixture price separately. The measure is the selling price you named. Your markup on it is in the tax base.
And now the part that people get wrong in both directions: an itemized invoice does not convert a lump sum contract into an itemized one. If you signed a lump sum contract and then sent a broken out invoice because the customer likes to see where the money went, the contract is still lump sum and the measure is still cost price. Going the other way, a contractor who wrote a time and materials contract naming the equipment price does not get back to cost price by sending a one line bill at the end.
The document that governs is the one that was signed. The billing describes it. Keeping those two straight is the same discipline that makes the rest of your billing work, and it is laid out in how to bill a California job.
One job, both ways, with the dates on it
A C-20 mechanical contractor replacing four rooftop package units and the associated ductwork on a private commercial building in Anaheim.
| Date | What happens |
|---|---|
| 3 August 2026 | Lump sum contract signed at $198,000 |
| 24 August 2026 | Units ordered. Cost price $14,200 each, $56,800 for four |
| 8 September 2026 | Sheet metal and hangers picked up, cost $19,400 |
| 14 to 18 September 2026 | Units set and connected |
| 30 September 2026 | Job complete |
Under that lump sum contract, Regulation 1521 gives you two positions on one job.
The ductwork, hangers and sheet metal are materials. You are the consumer. Tax ran on the $19,400 you paid, at the supply house, in September, and it is a cost you either carried in your bid or did not.
The rooftop units are fixtures. You are the retailer. Because the contract is lump sum, the measure is the cost price, $56,800.
Now write the identical job as a contract that names the units at $19,900 each, $79,600 for four, with the labor and the sheet metal priced separately. Same units, same crew, same building, same September.
| Lump sum contract | Contract naming the fixture price | |
|---|---|---|
| Materials measure, taxed on cost | $19,400 | $19,400 |
| Fixture measure | $56,800, the cost price | $79,600, the selling price |
| Total taxable measure | $76,200 | $99,000 |
The measure moved $22,800 on a decision made on 3 August, before anyone picked up a wrench. Every full percentage point of combined rate on that difference is $228, and California's combined rates run to several points above the statewide base depending on where the roof is. Repeat that across a year of fixture heavy work and it is not a rounding error, it is a truck.
Neither form is the right answer for every job. Lump sum keeps your markup out of the fixture measure; an itemized contract is often exactly what a commercial client wants to see. The point is that it is a priced decision made at contract stage, and most contractors make it without knowing money was attached.
If you build the fixture yourself, you pay tax on a profit you never charged
This one catches sign shops, sheet metal shops, millwork shops and anyone else who fabricates rather than only installs.
When you self manufacture a fixture and install it under a lump sum contract, the measure is the cost price of that fixture, and Regulation 1521 says the taxable cost price of a self manufactured fixture carries a deemed manufacturing profit. Your build cost is not the number.
Take a C-45 sign contractor fabricating an illuminated channel letter set in its own shop and installing it under a lump sum contract. Shop materials $11,300, shop labor $7,900, build cost $19,200. An estimator who budgeted tax on $19,200 budgeted on a figure the regulation does not use, because the measure includes a manufacturing profit on top of what the fabrication cost you.
That gap hides for years, because it never shows up as a missing invoice. It shows up as a shop that is slightly less profitable than the spreadsheet says, on the exact jobs it is proudest of. If you fabricate, this is the one line on this page to settle with your accountant, and it belongs in your shop rate before it belongs on a tax return. The trade that lives on it is worked through in the C-45 sign contractor guide.
Machinery and equipment is a sale, not an improvement
The third box is the smallest and the cleanest. Machinery and equipment is sold, not consumed. It does not become an integral part of the structure, so it is a retail sale on the selling price and it does not ride on the construction contract rules at all.
Settle this classification before quoting, because it changes both who owes the tax and what the number is. It also usually means you need to be registered to make retail sales in the first place, which is the CDTFA seller's permit guide.
One more category worth naming and then leaving alone: United States government construction contracts are treated differently under Regulation 1521. If federal work is coming, that is a conversation to have before the bid rather than after the award.
The rate is an address, so stop keeping one in your template
There is no single California rate to memorize, and a contractor who keeps one number in an estimating template is wrong on most jobs by a little and on some by a lot. District taxes ride on top of the statewide rate, they are set locally, and they change. The rate that applies to your job is read from the jobsite address.
Two habits fall out of that. Put the full jobsite address on the estimate, the contract and every invoice, so the rate is a lookup rather than a memory. And do the lookup at bid time, not at billing time, because the tax you pay as the consumer of materials is a cost you either recovered in the price or gave away. Nobody bills a customer for a tax they forgot to include three months ago.
Where this actually shows up in your money
Everything above lands in one place: your price. Tax on materials is a cost sitting inside your cost of goods. Tax on fixtures is a base you can move by how you write the contract. Tax on self manufactured work is higher than your build cost. All of it is knowable before you sign, which makes it one of the few costs in construction that never has to surprise you.
Load it in properly and it disappears into your number. The markup and margin calculator is free, needs no signup and will show you what an unrecovered percentage on your material spend does to a job, which is usually more than the margin you were arguing about with the customer. Building the whole overhead figure with this cost inside it rather than beside it is what to charge as a California contractor, and the other fixed annual cost of holding a California entity is in the franchise tax guide.
Settle it once, on a Sunday, for your whole trade
Three jobs of work and this subject is closed for good. Read your standard bill of materials against Regulation 1521's lists and mark every line as material, fixture or equipment. Decide, deliberately, whether your standard contract is lump sum or names fixture prices, and know what that choice does to the measure. And if you fabricate anything you install, get the deemed manufacturing profit into your shop rate rather than discovering it later.
Contractors lose money on this rule by treating it as an accounting problem that happens after the work. It is a pricing decision that happens before it, and the whole thing is written down in advance, which is the entire competence gap on the subject.
On AEC Stack there is no monthly subscription. The platform fee is 2.5 percent of each invoice processed through the platform, so the jobsite address, the fixture lines and the materials cost sit in the same record as the billing they came out of.
Take your last fixture heavy job, split the bill of materials into the three boxes above, and see which side your markup was taxed on. Then open a working demo business file and get the next contract written knowing what the form is worth.
Keep going
Count it instead of estimating it
- Hourly rate calculatorOverhead, billable days and the wage you want in. The hourly rate that pays for all three.
- Markup and margin calculatorAdd twenty percent to your costs and you keep sixteen point seven. Enter one job and see the price, the profit, both percentages, and what the mix-up is worth in dollars.
The dates that cost California contractors money
One email a month. The lien deadline and prompt payment and retention arithmetic this site already does for you, the dates it turns on, and every new guide the day it goes up.
- California lien deadline calculator: The 20-day preliminary notice, and what a recorded Notice of Completion does to your 90 days. It compresses them to 30 or 60.
- California prompt payment and retention calculator: Two clocks, not one. Progress payments from the demand, and retention from completion rather than from your final invoice.
- Every new guide the day it goes up. 88 are live for California right now, the most recent being "Do you need a license" on 20 August 2026.