Official portrait of Rep. Kathy Castor (D-FL)
Official portrait: unitedstates/images (public domain; source GPO Member Guide)

Rep. Kathy Castor (D-FL)

House · Democrat (most recent term) · FL-14 · in Congress 2007–present · Bioguide ID C001066

Party history: D 2007–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 at the earliest available report (2013); the member entered office earlier, in 20072013$2,170,046$3,549,023$4,928,000
(b) Latest net worth estimate2025$7,945,056$19,897,528$31,850,000
(c) Estimated gain / loss, nominal dollars, 2013 → 2025 (12 years spanned)2013–2025+$3,017,056+$16,348,505+$29,679,954

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

Note: earlier annual report(s) for 2012 exist but could not be used for net worth (scanned/not computable), so the 'earliest' figure is the earliest computable one.

Reliability flags (net worth): 2013: 1 Schedule A row(s) had the upper bound of the range lost in text extraction; completed from the fixed statutory bracket. 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
2012not availablevalidated OCR of a scanned filing: Schedule A is usable, but Schedule D (liabilities) is not parsed from scanned filings, so net worth is not computed
2013$3,549,023$0$3,549,023$2,170,046 … $4,928,000computed; 1 Schedule A row(s) had the upper bound of the range lost in text extraction; completed from the fixed statutory bracket
2014$4,053,522$0$4,053,522$2,505,045 … $5,602,000computed; 1 Schedule A row(s) had the upper bound of the range lost in text extraction; completed from the fixed statutory bracket
2015$3,954,522$0$3,954,522$2,427,043 … $5,482,000computed
2016$6,236,018$0$6,236,018$2,981,037 … $9,491,000computed; 1 Schedule A row(s) had the upper bound of the range lost in text extraction; completed from the fixed statutory bracket
2017$6,516,518$0$6,516,518$3,191,035 … $9,842,000computed
2018$6,296,518$0$6,296,518$3,001,037 … $9,592,000computed
2019$7,150,018$0$7,150,018$3,453,035 … $10,847,000computed
2020$9,831,524$0$9,831,524$5,246,049 … $14,417,000computed; 1 Schedule A row(s) had the upper bound of the range lost in text extraction; completed from the fixed statutory bracket
2021$11,644,526$0$11,644,526$6,443,051 … $16,846,000computed; 2 Schedule A row(s) had the upper bound of the range lost in text extraction; completed from the fixed statutory bracket
2022$10,073,526$0$10,073,526$5,356,051 … $14,791,000computed; 1 Schedule A row(s) had the upper bound of the range lost in text extraction; completed from the fixed statutory bracket
2023$13,801,026$0$13,801,026$6,736,053 … $20,866,000computed; 1 Schedule A row(s) had the upper bound of the range lost in text extraction; completed from the fixed statutory bracket
2024$15,078,526$0$15,078,526$7,577,052 … $22,580,000computed; 3 Schedule A row(s) had the upper bound of the range lost in text extraction; completed from the fixed statutory bracket
2025$19,897,528$0$19,897,528$7,945,056 … $31,850,000computed
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.)+12.8%
Simple average of years+15.0%
Years estimated12
Best / worst single year2013 +73%
2022 -13%

Reliability flags: 5/12 years trading-dominated; OCR-derived: 1/12 year(s) use validated OCR of scanned filings; 11 unparsed value(s).

Sensitivity band for the average (all ranges at floor vs. all at ceiling, same holdings both years): +13.3% to +12.2%. 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

-13%0%73%201320142015201620172018201920202021202220242025

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
2012→2013$1,605,514$3,246,519$43,410$690,037$171,505 +72.6%+56.8% … +110.9%-88% … +233%68%counted; OCR-derived (scanned filing; validated, see method) - years 2012; many new/exited positions
2013→2014$3,376,521$3,855,020$49,762$449,524$121,503 +5.9%+2.2% … +14.3%-90% … +102%97%counted
2014→2015$3,946,022$3,790,518$51,011$152,010$16,001 -6.1%-7.2% … -3.6%-85% … +73%99%counted
2015→2016$3,879,521$5,996,516$53,810$1,269,508$563,506 +37.8%+2.3% … +53.4%-101% … +177%98%counted
2016→2017$6,020,016$6,244,016$102,912$1,027,042$945,516 +4.1%+0.4% … +15.7%-122% … +130%99%counted; many new/exited positions
2017→2018$6,484,017$6,191,016$89,808$216,014$48,003 -5.7%-5.8% … -5.7%-111% … +99%100%counted
2018→2019$6,067,014$6,810,514$83,855$3,061,536$2,311,528 +1.3%+0.4% … +1.5%-149% … +152%96%counted
2019→2020$7,117,517$9,073,523$106,266$5,539,057$5,549,518 +29.1%+21.2% … +31.6%-162% … +220%100%counted; high turnover (buys+sells > 100% of opening value); many new/exited positions
2020→2021$9,078,020$11,354,024$64,612$1,068,558$220,505 +16.4%+11.9% … +29.1%-98% … +131%96%counted
2021→2022$10,128,516$9,052,020$127,758$715,036$313,003 -13.3%-13.5% … -12.8%-109% … +82%89%counted; many new/exited positions
2022→2023$1,515,006$7,426,014$26,658$642,523$40,002 +352.2%+263.3% … +393.9%+43% … +662%16%excluded; not eligible: traced coverage 16% < 60%; many new/exited positions
2023→2024$13,435,524$14,570,524$160,266$2,796,076$2,197,522 +5.2%+2.5% … +13.6%-120% … +131%99%counted
2024→2025$14,371,023$19,131,526$117,516$13,088,606$12,845,560 +32.3%+10.7% … +39.4%-185% … +249%98%counted; high turnover (buys+sells > 100% of opening value); many new/exited positions

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
20128212001House annual [OCR-derived]5/15/20135608212001.pdf
f360eb75a9c4c14474f00af0c203dc6edf91a0e3c344e6a47f21edc776396d48
201310000930House annual5/9/201451110000930.pdf
9f314f84d5c2d2642d1202aa8c42538c342649dbfaddb7c6c636130fdea8816e
201410010640House amendment4/29/201650110010640.pdf
04e0e036ddb02584406918dd0aae0662d305162e3c61e12b49330fafddfb1562
201510010421House annual5/13/201649010010421.pdf
258ae41983d00aa2f70edb2c993f6ad2b6409eb9b688657195469c043989ae89
201610017314House amendment5/18/201756110017314.pdf
40b5be05c84846c3551a7c95d63772e5e3ff32a5512dcdd90d296975847b4b69
201710020962House annual5/10/201849010020962.pdf
0534a7d5ec22f02d0452938bbe18724c81bf4a9ad291939be18f58d7aa3fe71d
201810026093House annual5/15/201938010026093.pdf
ae407eaa6b34dafb4d316135a69d9348a0c1a81ae8355e411d0cb7a2c1c18985
201910037307House annual8/12/202042010037307.pdf
031653ded888e8b8ca650c2478f4193cd2e0eb06289129a2828eaee45a5a5b81
202010043796House amendment9/27/202177110043796.pdf
c2c7c4607a06d8fc1849bead5b97c923af3108a1e6f4d1c754bd5ffa33e1abb0
202110047068House annual5/19/202251210047068.pdf
f1a826aaf739924e0a15ed263db581a58b980994a3a703bc3355cbda22c6a5fa
202210052732House annual5/24/202353110052732.pdf
06feecc1f733d2916f37ada23dd9d0dde174dc2fd5dcc5108a75e68e0fe56b8a
202310059113House annual5/10/202462110059113.pdf
159aa0f2920d18c87e8fdeaa5861707b753f97c062fee1904efab41bd553c76e
202410066133House annual5/15/202562310066133.pdf
b6956ba1515b5e41e617f2a34e2cff81c369c5fd96c0641e1f4c3602243ee869
202510076959House annual5/24/202671010076959.pdf
2be5db8d6192a86c2f9535d4f2f1d5ea1c995761c87c9aecb2b7ae40187a6cbd

Largest movers 2021→2022

Position (as written in filing)OwnerKindOpening range(s)Closing range(s)Buys (mid)Sales (mid)
Spouse 401K ⇒ JP Morgan Mid Cap Value I Fund [MF]SPheld$500,001 - $1,000,000$250,001 - $500,000$48,502$0
Vanguard Joint Retirement ⇒ Vanguard ESG U S Stock ETF [EF]JTheld$500,001 - $1,000,000$250,001 - $500,000$32,002$0
Franklin Templeton Joint Retirement ⇒ Franklin Growth Fund - Advisor Class [MF]JTheld$500,001 - $1,000,000$250,001 - $500,000$0$0
IRA ⇒ T Rowe Price Blue Chip Growth [MF]—held$250,001 - $500,000$100,001 - $250,000$8,000$0
Spouse 401K ⇒ Principal Global Investors LargeCap S&P 500 Index [MF]SPnew—$100,001 - $250,000$40,501$0
E*Trade Brokerage Account ⇒ Global X Nasdaq 100 Covered Call ETF (QYLD) [EF]JTnew—None$112,506$0
Franklin Templeton Joint Retirement ⇒ Franklin Rising Dividends [MF]JTheld$50,001 - $100,000$100,001 - $250,000$0$0
E*Trade Brokerage Account ⇒ Global X S&P 500 Covered Call (XYLD) [EF]JTnew—$100,001 - $250,000$113,004$0

Largest movers 2023→2024

Position (as written in filing)OwnerKindOpening range(s)Closing range(s)Buys (mid)Sales (mid)
Franklin Templeton Joint Retirement ⇒ Mutual Shares Corporation Cl Z (MUTHX) [MF]JTnew—$100,001 - $250,000$8,000$32,500
Vanguard Joint Retirement ⇒ Vanguard ESG U.S. Stock ETF (ESGV) [EF]JTheld$500,001 - $1,000,000$250,001 - $500,000$0$207,501
Spouse 401K ⇒ Principal Global Investors LargeCap S&P 500 Index (-) [OT]SPheld$1,000,001 - $5,000,000$1,000,001 - $5,000,000$382,502$215,502
Vanguard Joint Retirement ⇒ Vanguard High-Yield Tax-Exempt Fund (VWAHX) [MF]JTheld$15,001 - $50,000None$188,004$375,000
E*Trade Brokerage Account ⇒ Global X Nasdaq 100 Covered Call ETF [EF]JTheld$15,001 - $50,000$100,001 - $250,000$0$0
Franklin Templeton Joint Retirement ⇒ Franklin California High Yield Muni Fd Advisor ClassJTheld$50,001 - $100,000$250,001 - $500,000$196,504$0
Franklin Templeton Joint Retirement ⇒ Franklin Rising Dividends Fund Advisor Class (FRDAX)JTheld$100,001 - $250,000$50,001 - $100,000$0$0
Franklin Templeton Joint Retirement ⇒ Franklin Mutual U.S. Mid Cap Value Fund - Advisor ClJTheld$100,001 - $250,000$100,001 - $250,000$8,000$107,501

Largest movers 2024→2025

Position (as written in filing)OwnerKindOpening range(s)Closing range(s)Buys (mid)Sales (mid)
Vanguard Joint Retirement ⇒ Vanguard High-Yield Tax-Exempt Fund Admiral Shares (VWALX) [MFJTheld$250,001 - $500,000$1,000,001 - $5,000,000$1,854,514$3,000,000
Vanguard Joint Retirement ⇒ Vanguard Municipal Money Market Fund (VMSXX) [MF]JTnew—$1,000,001 - $5,000,000$1,332,502$32,500
Spouse 401K ⇒ Principal Global Investors LargeCap S&P 500 Index (-) [OT]SPheld$1,000,001 - $5,000,000$100,001 - $250,000$455,504$1,875,002
Franklin Templeton Joint Retirement ⇒ Franklin California High Yield Muni Fd Advisor ClassJTheld$250,001 - $500,000$1,000,001 - $5,000,000$1,757,504$0
Franklin Templeton Joint Retirement ⇒ FIST Equity Income Fund - Advisor Class (FEIFX) [MF]JTheld$500,001 - $1,000,000$1,001 - $15,000$8,000$105,502
Spouse 401K ⇒ Galliard Stable Return Fund C [OT]SPnew—$1,000,001 - $5,000,000$3,622,504$231,003
Spouse 401K ⇒ Lord Abbett Short Duration Income Class R5 (LDLTX) [MF]SPnew—$500,001 - $1,000,000$415,002$48,502
Franklin Templeton Joint Retirement ⇒ Franklin Growth Fund Advisor Class (FCGAX) [MF]JTheld$250,001 - $500,000$1,001 - $15,000$0$573,503

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).