Official portrait of Sen. Thom Tillis (R-NC)
Official portrait: unitedstates/images (public domain; source GPO Member Guide)

Sen. Thom Tillis (R-NC)

Senate · Republican (most recent term) · NC · in Congress 2015–present · Bioguide ID T000476

Party history: R 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$2,831,140$8,925,568$15,019,995
(b) Latest net worth estimate2025$2,961,031$6,663,014$10,364,998
(c) Estimated gain / loss, nominal dollars, 2014 → 2025 (11 years spanned)2014–2025−$12,058,964−$2,262,553+$7,533,858

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$9,573,070$647,502$8,925,568$2,831,140 … $15,019,995computed
2015$9,344,026$957,502$8,386,524$2,668,051 … $14,104,996computed
2016$9,599,027$925,002$8,674,026$2,828,054 … $14,519,997computed
2017$6,209,025$925,002$5,284,024$1,623,050 … $8,944,997computed
2018$6,033,024$550,001$5,483,022$2,001,047 … $8,964,998computed
2019$6,259,023$550,001$5,709,022$2,148,046 … $9,269,998computed
2020$6,753,022$550,001$6,203,020$2,466,043 … $9,939,998computed
2021$7,530,020$550,001$6,980,020$2,985,041 … $10,974,998computed
2022$6,831,524$350,001$6,481,524$2,793,049 … $10,169,998computed
2023$7,519,524$350,001$7,169,524$3,254,049 … $11,084,998computed
2024$7,563,016$350,001$7,213,015$3,361,032 … $11,064,998computed
2025$7,013,016$350,001$6,663,014$2,961,031 … $10,364,998computed
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.)+4.6%
Simple average of years+4.7%
Years estimated10
Best / worst single year2021 +13%
2017 -4%

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

-10%0%13%2015201620172018201920202021202320242025

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$6,876,512$6,801,012$18,702$0$0 -0.8%-1.0% … -0.8%-129% … +127%72%counted
2015→2016$8,970,522$9,052,522$94,261$0$0 +2.0%+1.9% … +2.1%-116% … +119%96%counted
2016→2017$5,903,020$5,655,020$32,060$0$0 -3.7%-4.2% … -3.5%-111% … +103%61%counted
2017→2018$6,002,522$5,960,022$28,910$0$0 -0.2%-0.7% … -0.1%-109% … +108%97%counted
2018→2019$5,950,022$6,184,022$34,060$0$0 +4.5%+4.0% … +6.2%-106% … +115%99%counted
2019→2020$5,511,019$5,920,519$25,006$0$0 +7.9%+7.2% … +10.1%-106% … +122%88%counted
2020→2021$6,680,020$7,497,520$23,006$0$0 +12.6%+11.1% … +17.2%-96% … +122%99%counted
2021→2022$305,002$305,002$0$0$0 +0.0%+0.0% … +0.0%-95% … +95%4%excluded; not eligible: traced coverage 4% < 60%
2022→2023$6,541,022$7,086,522$15,755$0$0 +8.6%+7.4% … +12.3%-99% … +116%96%counted
2023→2024$6,569,016$7,188,016$20,304$0$0 +9.7%+9.1% … +11.7%-95% … +115%87%counted
2024→2025$6,330,514$6,730,514$23,954$0$0 +6.7%+6.1% … +8.6%-100% … +113%84%counted

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
20147ffeb314-bfc3-472c-96ff-46660763ab82Senate annual06/11/20151400Senate eFD report
8cc59c0ff564ba7519da30773945dcf20ac03b2b9c0fb931431ae87109563ca1
2015caacfbda-c556-4b3c-9cb9-849d99436551Senate amendment10/11/2016510Senate eFD report
af66a9cba6fef78328d094a5790a8803cade8491aec9c7d77a20034760490a62
20167c429067-215b-4135-a139-294609c4464cSenate amendment09/16/2017540Senate eFD report
78672ddabd9019993cf72fa9798ffd1c6b6976f41ea3415613f9efb14fa16845
2017a5641ff5-edce-4913-abcc-567e8937c2b5Senate amendment10/11/2018500Senate eFD report
97e735f593ea16a45e20827209a471d3379e8e7191d64ecc5cdb7927e6ddcc9b
2018e38f97a2-e9d3-4d6d-ae4d-515a9be63d49Senate amendment08/12/2020470Senate eFD report
dda85bf7ab71cbd07da6544ecd47cf33cc76a7a70641c4639ac404dfa51cebb2
2019ed4493b1-aec5-4cb3-a53e-b5173b58f1afSenate annual08/12/2020460Senate eFD report
ac63f9a68d8cb234deac36e7f14aea8ef0bf051121198f8cc93582018c29d779
2020008b142d-54f3-4e9b-8aca-f378eb9b9cf0Senate annual05/17/2021430Senate eFD report
8ac3d5742cb5313a6f94b637f80da9630f5827e3b3b5df2969fcaacb93fe32a7
2021226a12d6-5d69-4362-accf-175d94e2760bSenate annual07/08/2022410Senate eFD report
06af23b5b7d2bd5dcde9f9d67af301b7f4442da45a1028092ad570969dfdf130
202233659fbf-ad06-4919-a45f-55792574cc79Senate annual07/18/2023490Senate eFD report
fb01eb90b21cb32902d1b28371a50164d611ac474b9271fb10d554594939bda3
20235f91f59d-3962-48bd-a19f-fa97f502642fSenate annual08/09/2024490Senate eFD report
79c31e0090a8293b59f5aadce20e37dcba6168b820a817c3fb42481d3ce99841
2024cb89b62d-ebfa-4739-abb0-3ce34f5533b3Senate amendment07/26/2026320Senate eFD report
2215d4763ce980b98f4ddacce8a884825fdbb7dbf6cd4472f003b84859d6c6d9
202533b5d7d8-3980-4062-be85-bb00ca02d0bdSenate annual08/12/2026310Senate eFD report
1fb7479226d43eccddc67947c968701eaa5bdcb16e9983a8f5b948e0bf54e227

Largest movers 2022→2023

Position (as written in filing)OwnerKindOpening range(s)Closing range(s)Buys (mid)Sales (mid)
Morgan Stanley Brokerage Account X066 ⇒ HNACX - Harbor Capital Appreciation Fund - RetiremJTheld$100,001 - $250,000$250,001 - $500,000$0$0
Morgan Stanley IRA Account x065 ⇒ IWF - iShares Russell 1000 Growth ETFJTheld$50,001 - $100,000$100,001 - $250,000$0$0
Morgan Stanley IRA Account x065 ⇒ MWTIX - Metropolitan West Total Return Bond Fd Cl IJTheld$50,001 - $100,000$100,001 - $250,000$0$0
Morgan Stanley IRA Account x065 ⇒ CIVIX - Causeway International Value Fund - InstitutionaJTheld$1,001 - $15,000$50,001 - $100,000$0$0
Morgan Stanley Brokerage Account X066 ⇒ IXN - iShares Global Tech ETFJTheld$15,001 - $50,000$50,001 - $100,000$0$0
Morgan Stanley Brokerage Account X066 ⇒ DODFX - Dodge & Cox International Stock FundJTheld$15,001 - $50,000$50,001 - $100,000$0$0
Morgan Stanley IRA Account x065 ⇒ TLT - iShares 20+ Year Treasury Bond ETFJTheld$15,001 - $50,000$50,001 - $100,000$0$0
Morgan Stanley IRA Account x065 ⇒ WMCVX - Wasatch Small Cap Value FundJTheld$15,001 - $50,000$1,001 - $15,000$0$0

Largest movers 2023→2024

Position (as written in filing)OwnerKindOpening range(s)Closing range(s)Buys (mid)Sales (mid)
Morgan Stanley IRA Account x065 ⇒ HDGIX - The Hartford Dividend & Growth Fund Class IJTheld$50,001 - $100,000$100,001 - $250,000$0$0
Morgan Stanley IRA Account x065 ⇒ MAHQX - Blackrock Total Return Fund Class IJTheld$50,001 - $100,000$100,001 - $250,000$0$0
Morgan Stanley IRA Account x065 ⇒ IVV - iShares Core S&P 500JTheld$50,001 - $100,000$100,001 - $250,000$0$0
Morgan Stanley IRA Account x065 ⇒ ABNFX - The Bond Fd of America Class F-2 SharesJTheld$50,001 - $100,000$100,001 - $250,000$0$0
Morgan Stanley IRA Account x065 ⇒ IWP - iShares Russell Midcap Growth ETFJTheld$1,001 - $15,000$50,001 - $100,000$0$0
Morgan Stanley IRA Account x065 ⇒ IEMG - iShares Core MSCI Emerging Markets ETFJTheld$15,001 - $50,000$50,001 - $100,000$0$0
Morgan Stanley IRA Account x065 ⇒ IWD - Russell 1000 Value Ishares ETFJTheld$15,001 - $50,000$50,001 - $100,000$0$0
Morgan Stanley IRA Account x065 ⇒ OANMX - Oakmark Fund Institutional ClassJTheld$15,001 - $50,000$50,001 - $100,000$0$0

Largest movers 2024→2025

Position (as written in filing)OwnerKindOpening range(s)Closing range(s)Buys (mid)Sales (mid)
Morgan Stanley IRA Account x065 ⇒ IWF - iShares Russell 1000 Growth ETFJTheld$100,001 - $250,000$250,001 - $500,000$0$0
Morgan Stanley Brokerage Account X066 ⇒ IWD - iShares Russell 1000 Value ETFJTheld$100,001 - $250,000$250,001 - $500,000$0$0
Morgan Stanley IRA Account x065 ⇒ FBND - Fidelity Total Bond ETFJTheld$250,001 - $500,000$100,001 - $250,000$0$0
Morgan Stanley Brokerage Account X066 ⇒ IXN - iShares Global Tech ETFJTheld$50,001 - $100,000$100,001 - $250,000$0$0
Morgan Stanley IRA Account x065 ⇒ IWD - Russell 1000 Value Ishares ETFJTheld$50,001 - $100,000$100,001 - $250,000$0$0
Huntersville Residence Description: Primary Residence - House (Huntersville, NC)JTheld$1,000,001 - $5,000,000$1,000,001 - $5,000,000$0$0
Morgan Stanley IRA Account x065 ⇒ IVV - iShares Core S&P 500JTheld$100,001 - $250,000$100,001 - $250,000$0$0
Morgan Stanley IRA Account x065 ⇒ Morgan Stanley (Cornelius, NC) Type: Money Market AccounJTheld$15,001 - $50,000$15,001 - $50,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).