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.
The tender is the last public step: where California work is starting
The invitation lands on a Tuesday with eleven days on it. It landed on everybody else's Tuesday too. By the time a job reaches the stage where somebody emails you a bid package, the design is finished, the budget is fixed, the general already knows which two subs he actually wants, and your entire role is to be cheaper than them.
That job did not start on Tuesday. It started months or years earlier, and almost every step in between was written down in public, because California law made the writing a condition of proceeding.
Building permits in Los Angeles, San Francisco, San Diego and Sacramento. Caltrans advertisements. Environmental filings in CEQAnet. None of it is a lead list and none of it is a tender. All of it is early, and early is the only part of this business you can still get for free.
A signal is not a lead, and the difference is the whole method
Three different things get run together here, and confusing them is why most contractors try this once and give it up inside a month.
A tender is a competition that is already open. Everyone on the list found out the same morning you did. Being good at tenders is being good at pricing, not at finding.
A lead is a person who wants something built and is willing to talk about it. There is a name, a number and an intent.
A signal is a published fact that work is coming. A permit application at an address. A project description filed with a lead agency. A highway contract advertised. It has no phone number attached and it is not asking you for a price.
What a signal has is a date, and the date is earlier than everybody else's. The whole return on reading public records is the gap between when the record appears and when the invitation goes out. You use that gap to be a known name before the shortlist exists, not to sneak past a bid.
Building permits: the record of what is actually being built
A permit is the least speculative signal there is. Somebody has paid a fee, filed drawings and named an address. If you work the major metros, the counters are LADBS in Los Angeles, the Department of Building Inspection in San Francisco, Development Services in San Diego and Community Development in Sacramento, and the same records exist in every other jurisdiction at varying levels of tidiness.
A permit record generally carries an address, a described scope, a stated valuation, an owner or applicant, an application date, an issue date and a status. Each is worth something different to you.
| What is in the record | What it actually tells you |
|---|---|
| Address | Which jurisdiction, which inspector, and which overlays apply, including whether the site sits in a fire hazard severity zone where Chapter 7A governs the exterior envelope |
| Scope description | Whether your trade is in it at all, and whether it is a shell job, a tenant improvement or a gut |
| Stated valuation | A budget signal, not a contract value. Treat it as an order of magnitude |
| Applicant or contractor of record | A name to call. This is the single most useful field on the page |
| Application date | The date that fixes which edition of Title 24 governs the job (24 CCR), because a code edition takes effect 180 days after publication and the permit application date locks the job to whichever one was in force |
| Status | Timing. Applied and not issued means plan check. Issued and not finaled means a live site |
The status field tells you when to call. A permit sitting in plan check is a job whose subcontractor list is still being assembled. A permit issued four months ago and not yet finaled is a job in the ground, which is exactly when a general starts needing a replacement for the trade that let him down. Neither of those is on a bid list anywhere.
The contractor of record field is the other half. The same twenty or thirty names hold most of the permits in a given city for a given building type, and if you are a specialty trade those names are your customers rather than your competitors. That is a call list you can build in an afternoon out of public data, and getting onto general contractor bid lists in California covers what to say when you make the call.
One structural fact saves a lot of wasted searching: the city does not hold every job. Public schools go to the Division of the State Architect, and hospitals and skilled nursing facilities go to HCAI with their own SPC and NPC seismic ratings. If institutional work is your market, a city permit feed cannot show it to you no matter how often you refresh. You are watching the wrong counter.
The record also settles code questions before you price anything. The application date tells you which Title 24 edition applies and therefore which CALGreen measures are mandatory, including the 65 percent construction and demolition waste diversion floor. Title 24 and CALGreen for contractors has the version arithmetic.
Caltrans advertisements: the state's own bid board, published on purpose
Caltrans advertises its highway contracts publicly, and the advertisement is not just the starting gun on a bid window. It is a date with money attached to it.
The wage determination that governs a public job is the one in force on the bid advertisement date, and it governs for the life of that job. General wage determinations issue twice a year and take effect 10 days after issue, so a project advertised a week before a new determination lands is priced on the old rates for its whole duration. Determinations carrying a double asterisk have predetermined increases you program into the estimate rather than absorb later. That one published date is the difference between a labor number that holds and one that does not, and it is covered in prevailing wage for California contractors.
Reading advertisements as a subcontractor is a different exercise from reading them as a prime. Prevailing wages apply to public works over $1,000 (Lab. Code s.1771), and subcontractors performing more than one-half of one percent of the total bid have to be named in the bid itself (Pub. Cont. Code s.4104). That listing requirement is why your window closes before bid day rather than after it. Once the envelope is sealed, the primes who wanted your price already have somebody else's.
So the advertisement date is your call date, not your bid date. It is also the date to check registration, because you and every sub you list have to hold current DIR registration to bid, to be listed and to perform (Lab. Code s.1725.5 and s.1771.1), and every registration in California renews on the same July 1. DIR registration and certified payroll covers the gate, and the bid ready checklist covers everything else that has to be true on the same morning.
There is a credit fact on the same page. A payment bond is required on public works over $25,000 (Civ. Code s.9550), with six months to sue on it (Civ. Code s.9558). Next to chasing a private developer, that is a known payer with a known instrument behind it.
CEQAnet: the signal that arrives years early
Building permits tell you a job is happening. Environmental filings tell you a job is being considered, which is a much earlier and much stranger place to be standing.
CEQA (Pub. Res. Code s.21000 and following, with the Guidelines at 14 CCR 15000 and following) makes environmental review a predecessor to approval on discretionary projects. A lead agency cannot approve the thing until the review is done. That ordering is what makes the filings useful: the paper exists before the approval, the approval comes before the construction documents, and the construction documents come before anybody sends you an invitation. Documents submitted to the State Clearinghouse are listed in CEQAnet, which is why a database built for planners is quietly the earliest construction feed in the state.
The document type tells you how firm the signal is, and each one carries a statutory clock.
| Document | What it means | The clock |
|---|---|---|
| Notice of Preparation | An EIR is being written, so the project is real enough to scope | Responses due within 30 days (Pub. Res. Code s.21080.4) |
| Draft EIR | Scope, acreage, phasing and construction assumptions, in writing | Public review at least 30 days, and 45 days when it goes through the State Clearinghouse (Pub. Res. Code s.21091) |
| Negative declaration or mitigated negative declaration | A smaller project on a faster path | 20 days review, 30 days through the Clearinghouse (Pub. Res. Code s.21091) |
| Notice of Determination | The project has been approved | Filed within 5 working days of approval and posted 30 days, with a 30 day challenge window (Pub. Res. Code s.21152 and s.21167(c)) |
| Notice of Exemption | Approved with no further CEQA review, so it can move quickly | 35 day challenge window from filing (Pub. Res. Code s.21167(d)) |
The outer bounds are what make this forecastable rather than a fishing trip. A lead agency completes an EIR within one year of accepting the application as complete, and a negative declaration within 180 days (Pub. Res. Code s.21151.5). A Notice of Preparation is not an open-ended maybe. It is the front end of a statutory time box with a defined far end.
One filing, five dates
Take a warehouse project in the Central Valley and follow the record.
| Date | What happens | Source |
|---|---|---|
| 12 March 2026 | Notice of Preparation posted. You now know the project, the applicant, the lead agency and the approximate size | Pub. Res. Code s.21080.4 |
| 11 April 2026 | Responses to the NOP close, 30 days later | Pub. Res. Code s.21080.4 |
| 14 August 2026 | Draft EIR published through the State Clearinghouse. Acreage, phasing, demolition and haul routes are now in writing | Pub. Res. Code s.21091 |
| 28 September 2026 | The 45 day review period closes | Pub. Res. Code s.21091 |
| 15 December 2026 | The project is approved. The Notice of Determination is filed by 22 December, five working days later, and posted for 30 days | Pub. Res. Code s.21152 |
| 21 January 2027 | The 30 day challenge window on the NOD runs out. The project is clear | Pub. Res. Code s.21167(c) |
Construction documents, permits and the bid package all come after that last row. A contractor who read the March filing had ten months before the approval and longer than that before anybody sent out an invitation. He did not need to do anything clever with them. He needed to make one call, be remembered, and check back twice.
The draft EIR is also a free estimating document. It states site acreage, which tells you whether the job crosses the one acre of disturbance where the construction general permit and a SWPPP written by a QSD and run by a QSP come into it, covered in stormwater and SWPPP for California contractors. It states phasing, which tells you when your trade is wanted. It names demolition, haul routes and hours of work, which are half the logistics assumptions you would otherwise guess at, on a job that does not exist yet.
What you actually do with a signal
The work is small and boring, which is precisely why the field is empty.
For each signal you keep, write three things: what and where it is, the date the record appeared, and the next date you expect something to happen. That third field turns a browsing habit into a pipeline, because it tells you when to look again instead of leaving it to memory.
Then make the call that matches the stage. On a permit in plan check, the applicant or contractor of record is assembling a list right now and a short introduction is timely. On a Caltrans advertisement, the call goes to primes before the bid closes, not after. On a CEQA filing there is nothing to bid, and pretending otherwise makes you look like you cannot read, so the call is a short one asking who is expected to build it and roughly when they expect to be pricing. You are not selling. You are getting your name into a project's memory before the shortlist exists.
All of these records are open to everybody, which sounds like it kills the advantage and does the opposite. Openness is not the scarce thing. Reading is. Almost nobody in the trades opens a CEQAnet filing on a Thursday afternoon, and the ones who do are the ones who always seem to know about the job before you. The find work side of AEC Stack is where you keep what you are tracking next to the jobs you are already running, so a signal you logged in March is still in front of you in November instead of lost in a browser tab.
Start with one address
Pick one job you lost this year. Look up the permit record and read the application date and the contractor of record. That is the name you should have known and the month you should have known it.
Then do it forward instead of backward: one search a week, one file, three fields, and a date to look again. On AEC Stack there is no monthly subscription. The platform fee is 2.5 percent of each invoice processed through the platform, so the tracking costs you nothing until one of these turns into work that pays.
Open a working demo business file and put the first three signals in it before somebody else's Tuesday email arrives.
Keep going
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.