Methodology & data
Dataset updated . Dataset timestamp — drives every JSON-LD dateModified and sitemap lastmod on this site.
Sources
Tracking the Sun + permits + programs + utility-scale
The installation spine is Lawrence Berkeley National Laboratory's Tracking the Sun public dataset — the most comprehensive research dataset of US distributed solar, compiled from state agencies, utilities and incentive-program administrators — ingested from the OEDI parquet mirror of the 2024 release. Records include system size, installed price, install date, ZIP/city/state, customer segment, third-party ownership, equipment manufacturers and battery attachment. Missing-value sentinels (-1, -9999, noMatch) are nulled at ingest.
Merged on top (2026-07) is a second compilation of public records: city permit portals (San Diego, Fort Collins, Cambridge and others), state incentive and interconnection programs (California DG Stats, NY-Sun, NJ DEP, PA AEPS, MN PUC, MA PTS, Illinois Shines, NC NCUC, …) and the federal utility-scale registers — USGS USPVDB, EIA-860/860M and BLM. Together: 3,941,331 recorded installations across 51 states. Many merged records carry coordinates, street addresses, mount type and battery capacity, which also enrich matched Tracking the Sun rows.
Deduplication: records are merged without double-counting. Known TTS duplicates and interconnection-queue entries are excluded outright; remaining distributed records are matched against existing rows on state + ZIP + install date (±30 days) + system size (±10%) — matches enrich the existing row instead of inserting a new one. Utility-scale plants are cross-source deduplicated by location and capacity, preferring USGS/EIA registers over satellite detections. Counts are still "recorded installations," not market totals: records lacking a date or size cannot be safely matched, so a residual overlap between permit records and TTS rows may remain.
Coverage caveat: every source covers only jurisdictions that publish installation-level records. States without a reporting program or open permit portal are under-represented, and covered states differ in how completely and how recently they report. All counts on this site are "recorded installations," not market totals.
Entity resolution
How installers are resolved
Installer names in the source are messy free text ("SolarCity", "Solar City Corp", "SOLARCITY CORP #4"). We resolve 3,941,331 records into 32,870 canonical installers by conservative, deterministic normalization: unwrap provider wrappers, fold to ASCII uppercase, strip punctuation and trailing branch numbers, iteratively strip corporate suffixes (INC/LLC/CORP/…), and group on the exact normalized key — no fuzzy matching. Near-miss clusters (e.g. SOLARCITY vs SOLAR CITY) are left unmerged pending human review, so a company may appear under more than one profile. Sentinels, self-installs and the literal "redacted" anonymization used by some programs are excluded from resolution.
Profiles with fewer than 5 recorded installs are published but marked noindex and excluded from sitemaps (completeness gate).
Geography
County derivation
The TTS mirror carries ZIP-level geography only. County pages are derived by mapping each installation ZIP to its primary county — the county with the largest land-area overlap in the Census 2020 ZCTA↔county relationship file. ZIP codes that straddle county lines are attributed entirely to the primary county, so county figures are approximate at boundaries. Most records map to a county this way; merged permit and utility-scale records with an explicit county keep it.
Statistics
Sanity bounds & medians
Medians are used throughout (never means — program price fields are heavy-tailed). Price-per-watt medians are computed within a 0.3–25 $/W band; total prices within $100–$10M; system sizes within 0–100 MW; install dates within 1990–2026 (the source contains 1899/9999 placeholder dates). Prices are nominal, pre-incentive, as reported to programs; third-party-owned systems sometimes report appraised rather than transaction values.
Freshness
Update cadence
LBNL releases Tracking the Sun roughly annually and the merged permit/program/utility-scale compilation is refreshed with it; each release is re-ingested in full (upserts are id-stable on the source natural keys, so URLs never orphan). The dataset timestamp above is the MAX ingest time across all tables and drives every dateModified and sitemap lastmod on the site.
Licensing
Use & attribution
PanelCensus pages and aggregates are free to cite with attribution to "PanelCensus (panelcensus.com)". The underlying data is public: Tracking the Sun is produced by LBNL with DOE funding (cite LBNL for the raw dataset itself); permit and program records belong to their issuing agencies; USPVDB is a USGS/LBNL product and EIA-860 a federal survey. Figures here are screening estimates derived from public data; verify independently before relying on them for underwriting or contractual decisions. Contact: kenny@hyder.me.