Official portrait of Rep. Mark DeSaulnier (D-CA)
Official portrait: unitedstates/images (public domain; source GPO Member Guide)

Rep. Mark DeSaulnier (D-CA)

House · Democrat (most recent term) · CA-10 · in Congress 2015–present · Bioguide ID D000623

Party history: D 2015–present. Source: term data in unitedstates/congress-legislators (CC0); party shown is as recorded per term there.

Estimated net worth (from public disclosures)

EstimateReport yearLowMidHigh
(a) Estimated net worth before entering office (report year 2014)2014$133,007$264,504$396,000
(b) Latest net worth estimate2025−$198,997$83,001$364,999
(c) Estimated gain / loss, nominal dollars, 2014 → 2025 (11 years spanned)2014–2025−$594,997−$181,502+$231,992

Gain Low = latest Low − earliest High; Gain High = latest High − earliest Low (widest possible spread); Mid = latest Mid − earliest Mid.

Reliability flags (net worth): none for these two endpoints. Included in the recommended dollar-gain ranking.

Net worth by report year (mid; Low–High)
Report yearAssets (mid)Liabilities (mid)Net worth midLow … HighStatus / flags
2014$264,504$0$264,504$133,007 … $396,000computed
2015$199,002$375,000−$175,998−$396,996 … $44,999computed
2016$199,002$925,002−$726,000−$1,146,996 … −$305,003computed
2017$191,002$550,001−$359,000−$647,997 … −$70,002computed
2018$199,002$550,001−$350,999−$646,996 … −$55,002computed
2019$191,502$550,001−$358,499−$647,996 … −$69,002computed
2020$215,502$550,001−$334,500−$633,997 … −$35,002computed
2021$208,002$1,300,002−$1,092,000−$1,634,997 … −$549,003computed
2022$215,502$750,000−$534,499−$883,997 … −$185,001computed
2023$258,002$375,000−$116,999−$348,997 … $114,999computed
2024$258,002$375,000−$116,999−$348,997 … $114,999computed
2025$458,002$375,000$83,001−$198,997 … $364,999computed
Read this first. Members report asset values only as ranges (e.g. “$15,001 – $50,000”), never exact dollars. Every figure below is an estimate computed from range midpoints, not a measured return. Figures cannot be interpreted as investment performance, and they do not show wrongdoing or skill. Methodology and limitations are at the end and in the project README. Sources: public financial disclosure reports filed with the Clerk of the U.S. House of Representatives and/or the Secretary of the Senate (Senate eFD), linked below.
Avg. annual change (geometric, est.)+6.6%
Simple average of years+8.5%
Years estimated11
Best / worst single year2025 +78%
2015 -14%

Reliability flags: 1 year(s) driven by income/one position/range artefact.

Sensitivity band for the average (all ranges at floor vs. all at ceiling, same holdings both years): +8.9% to +5.6%. This band is narrow because it moves both years together; the true uncertainty is larger — see the per-year “strict envelope” column and the limitations.

Estimated year-over-year change

-14%0%78%20152016201720182019202020212022202320242025

Bars: midpoint estimate; whisker: same-position floor/ceiling band. Axis clipped to −100%…+150%. Years with insufficient traceable holdings are omitted.

Year (t−1 → t)Opening value (mid)Closing value (mid)Income (mid)Buys (mid)Sales (mid)Est. gainSame-position bandStrict envelopeTraced coverageStatus / flags
2014→2015$232,003$199,002$201$0$0 -14.1%-14.6% … -12.7%-105% … +76%88%counted
2015→2016$199,002$199,002$201$0$0 +0.1%+0.0% … +0.1%-96% … +97%100%counted
2016→2017$191,002$191,002$201$0$0 +0.1%+0.0% … +0.1%-93% … +93%96%counted
2017→2018$191,002$191,002$201$0$0 +0.1%+0.0% … +0.1%-93% … +93%100%counted
2018→2019$199,002$191,502$302$0$0 -3.6%-4.5% … -1.0%-97% … +90%100%counted
2019→2020$191,002$215,502$201$0$0 +12.9%+12.6% … +13.7%-86% … +112%100%counted
2020→2021$215,502$208,002$201$0$0 -3.4%-4.3% … -0.9%-93% … +86%100%counted
2021→2022$208,002$215,502$201$0$0 +3.7%+0.9% … +4.8%-89% … +96%100%counted
2022→2023$215,502$258,002$701$0$0 +20.0%+16.3% … +30.3%-76% … +116%100%counted
2023→2024$258,002$258,002$701$0$0 +0.3%+0.1% … +0.3%-83% … +83%100%counted
2024→2025$258,002$458,002$701$0$0 +77.8%+68.8% … +99.5%-25% … +180%100%counted; single position drives the result (range jump)

Filings used

Each annual-report year uses one filing (most recently filed version among originals/amendments whose Schedule A row count is ≥ 40% of the largest). Electronic (text) PDFs are parsed. Scanned/image-only filings are OCR-read and used only if they pass the explicit validation gates described in the project README (value/income coverage, two-engine agreement, exact bracket snapping, page completeness, year-to-year position continuity); such years are labelled OCR-derived below. Scanned filings that fail validation are listed as “insufficient data – scanned”.

Report yearDoc IDTypeFiledSchedule A rowsRows with unparsed valueSource (official filing) / SHA-256
201410005763House amendment7/14/20157010005763.pdf
5ff7b04353009dff4757d2d009045ee6a3c95c023f2376249859d33bb4cd8b04
201510011267House annual5/16/20166010011267.pdf
3532fca7f1a58cdffa7075be0e823d1f2788a75f1d2d86b093ddf445d62d755a
201610015893House annual5/11/20174010015893.pdf
d1ad23f24fb4c2a431de54eee6875506cff095d1aa38768d346c6e9e63f0c853
201710021863House annual5/15/20183010021863.pdf
77e15a654783713c971e188aace6b8a35b7358237802de0968459076a9e2b2dc
201810026293House annual5/10/20194010026293.pdf
8176ad5464c3db49e354e2c43d43e1b039e32abd9ad2ba8a0571e8ca882759a1
201910037166House annual7/30/20204010037166.pdf
e7292e591be81f34fe63bc8a2001b75125a6ddff8f1a0b12b70cbd00f572f396
202010041145House annual7/21/20213010041145.pdf
0ea898f59208aea24c4e86e935947a6dd72ca701f5048de371dfa2cd619cced3
202110047044House annual5/16/20223010047044.pdf
26307c30d06f9b2829604c4d8e45ba621bb342767a7b56281f51ca95adae440f
202210052443House annual5/12/20233010052443.pdf
07ccd1b5bfff581c0be16cd005344183287055e5514043a3aa484c432fcb8235
202310059653House annual5/6/20243010059653.pdf
6d7aab364edb522b2ef5cb541dd64d58129c0faba31f6700a1e107f1a8dad6e2
202410067325House annual5/6/20253010067325.pdf
8af9a60561ecc787ccf8df3d1c0ed676d1ca00ac45c94b11f170234e4d771c0b
202510078110House annual5/14/20263010078110.pdf
180362343f215df525137e3153df6b7bf7a9fa76c8e24a062454000c5139818c

Largest movers 2022→2023

Position (as written in filing)OwnerKindOpening range(s)Closing range(s)Buys (mid)Sales (mid)
US Bank [BA]—held$15,001 - $50,000$50,001 - $100,000$0$0
Travis Credit Union [BA]—held$1,001 - $15,000$1,001 - $15,000$0$0
Contra Costa County Employee Retirement Association [PE]—held$100,001 - $250,000$100,001 - $250,000$0$0

Largest movers 2023→2024

Position (as written in filing)OwnerKindOpening range(s)Closing range(s)Buys (mid)Sales (mid)
Travis Credit Union [BA]—held$1,001 - $15,000$1,001 - $15,000$0$0
US Bank [BA]—held$50,001 - $100,000$50,001 - $100,000$0$0
Contra Costa County Employee Retirement Association [PE]—held$100,001 - $250,000$100,001 - $250,000$0$0

Largest movers 2024→2025

Position (as written in filing)OwnerKindOpening range(s)Closing range(s)Buys (mid)Sales (mid)
Contra Costa County Employee Retirement Association [PE]—held$100,001 - $250,000$250,001 - $500,000$0$0
Travis Credit Union [BA]—held$1,001 - $15,000$1,001 - $15,000$0$0
US Bank [BA]—held$50,001 - $100,000$50,001 - $100,000$0$0

Method (summary)

  1. Schedule A asset rows are read from each annual report; the dollar range for each row is converted to its midpoint. Open-ended top ranges (“Over $50,000,000”) are excluded from the traced set and counted as a coverage loss.
  2. Positions are matched year to year by owner code (self/SP/DC/JT) + normalised asset name. A position that appears only in year t is included only if Schedule B shows a purchase of it in year t (opening value 0); a position that disappears is included only if Schedule B shows a sale (closing value 0). Otherwise it is excluded as unexplained.
  3. Estimated gain = (closing − opening + reported income − purchases + sale proceeds) ÷ opening, all at midpoints, for the traced positions. “Capital gains” income is not added again (it is already in value change and sale proceeds).
  4. A year counts only if traced opening value ≥ $50,000 and traced coverage ≥ 60% of the opening midpoint. A member is ranked only with ≥ 3 such years (exactly 2 = “limited data”, shown but unranked). Average = geometric mean of (1+yearly estimate).

Limitations

Generated 2026-10-01 by an automated pipeline. Data: Office of the Clerk, U.S. House of Representatives (disclosures-clerk.house.gov); member roster: unitedstates/congress-legislators (CC0).