The real weekly volume, published free.
Every count below is measured from the public record and republished each week — per trade, per region and per jurisdiction, with the not-sold trades left in. The statistics are free. The product is the addresses.
Measured, never projected/7-day window/One public JSON file
Every figure on this page is a real count from the last 7 days, measured 2026-09-16. Totals are the sum of cities actually measured this run. A city whose source could not be read is named and excluded — never estimated, never carried forward, never counted as zero. Precomputed and stored — this page does not call a permit API when you load it.
Owner-pulled job sites by trade, City of San Diego.
| Trade | North of I-8 | I-8 and south | Citywide | Sold? |
|---|---|---|---|---|
| Electrical | 2 | 3 | 5 | Yes |
| Remodel / GC | 4 | 4 | 8 | Yes |
| Plumbing | 1 | 2 | 3 | Yes |
| HVAC | 1 | 3 | 4 | Yes |
| Solar | 1 | 0 | 1 | Too thin to sell |
| Roofing | 2 | 2 | 4 | Too thin to sell |
An individual, one property, no contractor named on the permit — counted after the owner filter and deduped by address, so one project is one job site. A combination permit can match more than one trade, which is why the trades can sum past the citywide total of 13. Trades marked "too thin to sell" are measured and published anyway — we would rather show you the number than hide the reason.
Permit volume by jurisdiction, and what each number counts.
| Market | What the number counts | Permits · 7 days |
|---|---|---|
| Huntington Beach | Tier B · All new permits | 186 |
| Chula Vista | Tier B · All new permits | 114 |
| Carlsbad | Tier B · All new permits | 110 |
| Fullerton | Tier B · All new permits | 84 |
| Newport Beach | Tier B · All new permits | 83 |
| Westminster | Tier B · All new permits | 80 |
| Costa Mesa | Tier B · All new permits | 70 |
| Laguna Niguel | Tier B · All new permits | 57 |
| Escondido issued in the week ending 2026-07-31 — Escondido publishes its permit reports about a month later |
Tier B · All new permits | 49 |
| Tustin | Tier B · All new permits | 48 |
| Lake Forest | Tier B · All new permits | 45 |
| San Marcos issued in the 7 days ending 2026-07-31, from the city's monthly permit report |
Tier B · All new permits | 40 |
| Yorba Linda | Tier B · All new permits | 38 |
| Brea | Tier B · All new permits | 35 |
| Aliso Viejo | Tier B · All new permits | 32 |
| Unincorporated San Diego County | Tier A · Owner-pulled | 25 |
| Laguna Hills | Tier B · All new permits | 25 |
| La Habra | Tier B · All new permits | 25 |
| El Cajon | Tier B · All new permits | 24 |
| Imperial Beach | Tier B · All new permits | 13 |
| Solana Beach | Tier B · All new permits | 9 |
| Santee | Tier B · All new permits | 8 |
| City of San Diego — north of I-8 | Tier A · Owner-pulled | 7 |
| City of San Diego — I-8 and south | Tier A · Owner-pulled | 6 |
| Del Mar | Tier B · All new permits | 6 |
| Encinitas | Tier B · All new permits | 5 |
| Oceanside | Tier A · Owner-pulled | 3 |
| Coronado issued in the 7 days ending 2026-07-31, from the city's monthly permit report |
Tier A · Owner-pulled | 0 |
| Vista | Tier A · Owner-pulled | 0 |
| Anaheim The city's permit layer is 41 days behind, so Anaheim is not quoted this week. |
Tier A · Owner-builder flag, no name | not quoted this week |
Tier A totals count owner-pulled job sites after the filter. Tier B cities publish no permit holder, so a Tier B total counts every new permit — both numbers are real, but they are not comparable, and nothing in a Tier B city is ever sold as owner-pulled. Anaheim counts every new permit too, with the city's own owner-builder flag counted beside it — no name is published there. Which city sits in which tier is on coverage.
City of San Diego, owner-pulled, week by week.
| Week of | Qualified job sites |
|---|---|
| 2026-08-31 | 37 |
| 2026-09-07 | 40 |
| 2026-09-14 | 13 |
The series starts 2026-08-31 because that is when we started storing it. It grows one week at a time, and we publish whatever it says.
Two kinds of city publish two different things.
Tier A · Owner-pulled
Filtered to jobs an individual filed at their own property, with no contractor named on the permit.
Tier B · All new permits
Every new permit filed in the city. These cities do not publish who pulled the permit, so nothing here is ever described as owner-pulled — you get the fresh filing and the address, and you find out who is on it yourself.
How these numbers are made.
- The source is the public record. The City of San Diego publishes every development permit as free open data, refreshed daily. The other cities here publish no feed at all, so we read each one's own permit portal.
- We count job sites, not permit rows. One homeowner project files a separate approval row per discipline — building, electrical, plumbing — so rows are deduped by address before anything is counted.
- Owner-pulled means filtered. In the City of San Diego we drop every permit held by a company, and every holder who appears at more than one distinct address across the year — that removes the contractors and the permit runners both. It is why the numbers are small. They are the real ones.
- Precomputed, then served. The counts are measured by a weekly job and stored in one public JSON file — the same file this page and every sales page render from, so no two pages can disagree.
Nothing on this page is an address or a name. Every figure is an aggregate: the individual job sites go only to subscribers, in the Monday email.
Three real leads, every Monday, free.
Statistics do not run out; leads do. Take three a week and see whether the addresses behind these counts are worth $39 a month to you.
Try it free — 3 jobs by email, no card
The same owner-pulled permits paying subscribers get, three per week, free. No card, no call, unsubscribe in one click. See the quality, then decide.
Chad Vasquez · Groundwork, a Prompt Flow LLC company · San Diego, CA
(760) 464-5105 · chad@promptflowbusiness.com
A small San Diego operation, not a lead-gen call centre. Day job's a fireman; this is the side business. You can phone the number above and I will pick up. Cancel anytime in one click — no retention script, no website upsell. Billing is Stripe; the Monday email goes out through Resend.