Groundwork · San Diego, CA
GGroundwork
Groundwork · Guide

How to find San Diego homeowners pulling their own permits — and what the permit can and cannot tell you.

The City of San Diego publishes every building permit as free open data, daily. Most of the rows are contractors' paperwork. A small share are filed by an individual at their own property with no contractor named on the record. This page shows how to read those rows yourself, and what we do with them.

1. Where the file is

Two CSV files, no login, updated every day: data.sandiego.gov/datasets/development-permitsapprovals_created and approvals_issued. The columns that matter are the address, the approval type and status, the scope, the valuation where the City captured one, and APPROVAL_PERMIT_HOLDER: who the City recorded as the permit holder.

2. What "owner-pulled" means, exactly

The holder field is a name. When it is a company — a contractor, a solar installer, a permit-running service — a licensed business already holds the job. When it is a person, the permit was filed in an individual's name. That is the whole signal, and it is narrower than it sounds. A permit records that a fee was paid and that a field is empty. It does not say whether the owner has already spoken to a contractor. So we say exactly what the record supports — an individual, one property, no contractor named on the permit — and nothing about who they have or have not called.

3. The filter that actually matters

The first version of this feed trusted the name shape, and sold contractors' permits as homeowners': a person-shaped name that appears at 529 different addresses across the year is a company, however it is spelled. So the working rule is one holder, one address: any holder found at more than one distinct property in the year's file is dropped. That removed 60–76% of what looked owner-pulled, and every genuine homeowner in the sample sat at exactly one address. Then keep only Opened / Issued — a permit at Inspection Followup is work already underway.

Do that by hand and it is an 18 MB spreadsheet every Monday. We do it every Monday and email the result by trade.

4.Three of this week's real remodel / gc rows · measured 2026-09-02

Three of this week's 27, as the City recorded them.

Real permits, filed this week by an individual at their own property. Quote any permit number to SD Development Services and you will see the same record we read — before you give us anything.

Remodel / GC · Issued 2026-08-27

1. 3036 Udall St, San Diego, CA 92106

**Replacement for expired permits under PRJ-1044504** PENINSULA. Combination building permit for partial demolition of an existing SDU, addition/reconfiguration of area o…

Valuation $951,946 · Permit PMT-3421509 · map · verify with the City

Holder on file (name on the paid feed) — an individual, one property, no contractor named on the permit.

Remodel / GC · Issued 2026-08-29

2. 1102 Sorrento Dr, San Diego, CA 92107

PENINSULA ; Combination Building Permit for a proposed addition and remodel of the existing 2-story SDU.

Valuation $357,851 · Permit PMT-3330356 · map · verify with the City

Holder on file (name on the paid feed) — an individual, one property, no contractor named on the permit.

Remodel / GC · Issued 2026-08-28

3. 962 Diamond St, San Diego, CA

PACIFIC BEACH: Combination building permit for the proposed remodeling and addition to an (E) duplex (unit 962 Diamond st), work to include a new deck to the 2nd floor. Z…

Valuation $290,094 · Permit PMT-3370119 · map · verify with the City

Holder on file (name on the paid feed) — an individual, one property, no contractor named on the permit.

24 more qualified this week. Free gets three every Monday; $39/mo gets every one, with the holder's name and, where we can get it, the owner's number.

37owner-pulled job sites citywide, last 7 days
15Electrical
27Remodel / GC
8Plumbing
6HVAC

Measured 2026-09-03 from the City's file. A job can match more than one trade, so the trades can sum past the total. Real counts, not projections.

5.Three by email, free

Pick your trade. Three of this week's, no card.

The same rows a paying subscriber gets, three per week, with the address, scope, valuation and permit number — quote the number to the City and check us. The full list for a trade is $39/mo, every qualifying job, every Monday.

Free never includes the holder's name or any contact detail. And on any tier we will not claim anything about who the owner has or has not already called — a permit cannot tell you that.

6.By trade
Who you're buying from
Chad Vasquez, who runs Groundwork

Chad Vasquez · Groundwork, a Prompt Flow LLC company · San Diego, CA

chad@promptflowbusiness.com

A small San Diego operation, not a lead-gen call centre. Day job's a fireman; this is the side business. Cancel anytime in one click — no retention script, no website upsell. Billing is Stripe; the Monday email goes out through Resend.

Free · No card
3 jobs by email. No card.
Get them