Oakland FM audit

Modeled coverage and reported ownership of FM stations, City of Oakland, California

Prepared September 27, 2026

Public FCC and Census records only

34 FM stations put at least half of Oakland's residents inside their modeled contour.

2 report a minority majority of their owners' voting interests. 2 more are nonprofits with a women-majority board: governance, not ownership. 4 need confirmation.

What the FCC ownership forms report, kept as reported: owners apart from boards, nothing certified.

440,646 residents (2020 Census) live inside the combined modeled contours of the 4 reported stations: all of Oakland. Not an audience estimate.

  • Reported ownership majority
  • Nonprofit, women-majority board
  • Needs confirmation
  • Oakland city, Census place 0653000
San FranciscoSan JoseWalnut CreekSanta RosaLivermoreSan MateoVallejoOaklandKPFAKQED-FMKRZZKLVSKSJOKEXC20 km
KSJOKEXU-LPKGPC-LPKACR-LP / KJTZ-LPKKIQKPFBOakland, closerContours that cut the city. Dotted: under half.5 km
Contours: FCC FM service contour file of Sept 26, 2026. Land: Census cartographic boundaries.Lambert conformal conic

The stations, and what their filings establish

Rule, fixed before the run: a licensed FM or low power FM station qualifies when its modeled contour holds at least half of Oakland's 2020 residents. Select a station to see the record behind each line.

Reported ownership majority 2

For-profit licensees whose owners' voting interests are reported as majority minority. Reported, not certified.

Nonprofits with a reported board majority 2

Noncommercial licensees file Form 323-E, which reports the governing board. A nonprofit has no owners.

Needs confirmation 4

Evidence is missing, superseded or insufficient. None of these is read as "not diverse".

Qualifies geographically, no majority reported 26

Their 2023 filings report no majority of minority or women voting interests. Share of Oakland residents inside each contour:

Touch Oakland, below the rule 6

Their contours intersect the city but hold less than half of its residents. A plain intersection test would have kept them.

Translators, listed and left for a separate rule 4

A translator can have its own licensee and often carries an AM or HD2 signal: here K229DD (Pham Radio Communication) and K257GE (Lazer Licenses) are held by their own companies. Only K205BM (K-LOVE) reaches half of Oakland, at 51%.

Boosters, not counted 16

A booster repeats its own station on the same frequency. It extends that station's reach; it is not a separate property.

What changed the list

Each of these was measured in this run. Where a check changed nothing in Oakland, it says so.

For the engineers

Everything above is precomputed in PostGIS and frozen into this page. Nothing here is drawn freehand or queried live.

Method

  • Analysis in EPSG:5070 (Albers equal-area). Display shapes are simplified copies; no count is ever taken from them.
  • Residents come from 2020 Census blocks, allocated by the share of each block inside the contour and the city. Blocks carry disclosure-avoidance noise and are meant to be added up, which is how they are used here.
  • Contours are the FCC's predicted protected contours: 54 dBu for class B, 57 dBu for B1, 60 dBu otherwise and for every reserved-band noncommercial station. A prediction, not a measurement of reception.
  • AM is out of scope: the FCC publishes no comparable contour file. Television and DMA assignment are separate questions and are not mixed in.
  • Geographies are joined by identifier (place 0653000), never by name. ZIP codes are not used; where a ZIP question comes up, a ZCTA is labelled as a ZCTA.

The rule, as it runs

-- residents of Oakland inside one contour g
select round(sum(b.pop * b.w * f.frac))
from   geo.audit_block b      -- 2020 blocks; w = share inside Oakland
cross join lateral (
  select case when ST_Within(b.geom_aea, g) then 1.0
              else ST_Area(ST_Intersection(b.geom_aea, g))
                   / ST_Area(b.geom_aea) end as frac) f
where  ST_Intersects(b.geom_aea, g);

-- g is the facility's LICENSED contour (status LIC, matched
-- by LMS application id), never the largest one on file.
-- The station qualifies when the result is >= 50% of 440,646.

Sources

SourceVintageRights
FCC FM service contoursDaily file of Sept 26, 2026 (active records)US government work
FCC FM Query, CaliforniaRetrieved Sept 27, 2026US government work
FCC Report on Ownership of Broadcast Stations, Forms 323 and 323-EData as of Oct 1, 2023, released Jan 2025US government work
Census TIGER/Line, places and 2020 blocks with countsRelease of Sept 2025; boundaries as of Jan 1, 2025; counts from the 2020 CensusUS government work, cite the Census Bureau
Census cartographic boundaries, counties2024 release (display only)US government work
IRS exempt organizations (via ProPublica Nonprofit Explorer)Retrieved Sept 27, 2026 (one record: Friends of KEXP)Public record
Nielsen DMANot usedLicensed data required
Medill State of Local NewsNot usedNo suitable reuse permission established; excluded

Checks that run with it

  • Block counts reproduce the published 2020 totals of all nine Bay Area counties and of Oakland (440,646)
  • Owners and boards are never merged: the four reported stations split two and two
  • The certified export keeps only for-profit candidates; nonprofits and public bodies are marked not applicable
  • KEXC's 2023 row is read with its licensee of that date (KREV, a bankruptcy estate), not today's
  • A shape that meets the city at a single point intersects it and holds nobody (synthetic case)
  • 284 neighboring blocks that share only an edge with Oakland add no one to any count
  • Every audited contour is the licensed record of its own facility; the two where the largest record differs are pinned
  • Contour thresholds checked against the FCC distance calculator on two stations (54 dBu class B, 60 dBu reserved band)
  • Noncommercial filings are always labelled as board votes, never as equity
  • A superseded licensee or a missing filing stays unresolved; it never becomes "not diverse"
  • The certified-export policy admits nobody from FCC sources
  • The union of contours never exceeds the city; the sum does

Where your data joins

Three empty tables wait for what you already hold: a county to DMA table loaded from your Nielsen license, an outlet-coverage table keyed on your own outlet identifiers (where a newspaper's declared counties sit next to a station's contour), and a certification table with scheme, certificate, validity and the date it was verified.

Code and tests

The loading scripts, the PostGIS model, the audit queries and the 12 checks above are public, with the steps to rebuild everything from the government files: github.com/fred1433/broadcast-geo-audit.