The 90% Gambling Loss Cap: How OBBBA's 2026 Rewrite of IRC §165(d) Taxes a Losing Year

Published: September 24, 2026 · Reading time: 10 min

TL;DR: The One Big Beautiful Bill Act permanently rewrote IRC §165(d), effective for tax years beginning after December 31, 2025 (Pub. L. 119-21, §70114): wagering losses are now deductible only up to 90% of their total, still limited to that year's gains, and — permanently, not just through 2025 — that "losses from wagering transactions" bucket sweeps in any ordinary business expense a professional gambler incurs running the activity. In the worked example below, a professional sports bettor with $500,000 in winnings, $520,000 in losing bets, and $30,000 of legitimate business expenses — a real $50,000 loss for the year — still owes tax on $5,000 of phantom Schedule C profit plus $706.48 of self-employment tax (after a $929.35 §199A QBI deduction), and the household's total federal bill rises by $1,524.31 compared to the 2018–2025 rule (which already swept in expenses but had no 90% haircut), and by $6,824.31 compared to the law that would have applied without OBBBA's changes at all.

Most gambling-tax coverage stops at "you can deduct your losses up to your winnings." That was true, in full, through 2025. For 2026 it's no longer the whole rule, and the part that changed is easy to miss because it isn't really about betting at all — it's about what counts as a "loss" in the first place, and how much of it you're allowed to use.


Three Rules, Not One

§165(d) has gone through three distinct versions since 2017, and which one applies to a given tax year is the whole ballgame:

  1. Pre-2018 (and what 2026 would have reverted to without OBBBA). "Losses from wagering transactions shall be allowed only to the extent of the gains from such transactions" — the literal losing bets, 100% deductible up to that year's winnings. A professional gambler's ordinary business expenses (travel, data feeds, entry fees) were separate §162 business deductions, fully deductible regardless of how the wagering itself performed — the treatment the Tax Court confirmed in Mayo v. Commissioner, 136 T.C. 81 (2011).
  2. 2018–2025 (TCJA, temporary). The same 100%-up-to-gains limitation, but the definition of "losses from wagering transactions" was expanded to include "any deduction otherwise allowable under this chapter incurred in carrying on any wagering transaction" — sweeping a professional gambler's business expenses into the capped bucket for the first time. This expansion had a built-in expiration: it applied only "in the case of taxable years beginning after December 31, 2017, and before January 1, 2026," per the U.S. Code as codified for that period.
  3. 2026 forward (OBBBA). Section 70114 of Pub. L. 119-21 is titled "Extension and Modification of Limitation on Wagering Losses" — both words matter. It removes the 2026 sunset, making the expense sweep-in permanent, and adds a 90% cap that never previously existed. The current statute reads: the deduction "shall be equal to 90 percent of the amount of such losses during such taxable year, and... shall be allowed only to the extent of the gains from such transactions during such taxable year," and the special-rule sentence sweeping in business expenses is unchanged and now permanent.

That third version is the law for 2026 returns. It is meaningfully worse than either of the two rules that preceded it — not an extension of the status quo, despite the section title's first word.


Who This Actually Reaches

The 90% cap on literal losing bets touches anyone who gambles and itemizes — a casual bettor with a good year at the blackjack table and a bad one the next, deducting losses on Schedule A up to that year's winnings, now loses a flat 10% off the top. That's a real, if modest, tax increase on its own.

The expense-sweep-in half of the rule is a different animal, and it only bites a taxpayer who has gambling-related business expenses to sweep in — which in practice means someone whose gambling rises to a trade or business. The Supreme Court's test, from Commissioner v. Groetzinger, 480 U.S. 23 (1987), is specific: "if one's gambling activity is pursued full time, in good faith, and with regularity, to the production of income for a livelihood, and is not a mere hobby, it is a trade or business." That's a real bar — occasional sports betting on the side of a W-2 job doesn't clear it — but a freelancer who genuinely handicaps and bets as their primary occupation, files Schedule C, and deducts a home office, data subscriptions, and travel to tournaments or sportsbooks is squarely inside it. That's the taxpayer this post is about.


The Mechanism, In One Sentence

Take your total "losses from wagering transactions" for the year — which for a professional gambler now permanently means the losing bets plus every ordinary business expense of running the activity — multiply by 90%, and that's your deduction, unless your winnings for the year are smaller still, in which case your winnings are the ceiling instead.

Two things follow from that sentence that don't follow from "you can deduct your losses":

  • The deduction can land below your real combined losses-plus-expenses even when your winnings are large enough to cover them in full. The 90% haircut applies before the gains test, not instead of it — you can be gains-constrained and haircut-constrained in the same year, and whichever number is smaller is what you get.
  • A real economic loss for the year — winnings minus losing bets minus business expenses, all negative — can still produce positive taxable income, because the allowed deduction is capped below what you actually spent, and the excess isn't a carryforward. It's simply gone.

Worked Example: One Bettor, Three Regimes

Facts, 2026. A full-time professional sports bettor operates as a sole proprietorship, filing Schedule C, clearing the Groetzinger trade-or-business test (this is their sole occupation and livelihood). For the year: $500,000 in total wagering gains, $520,000 in losing bets, and $30,000 of legitimate, substantiated business expenses (data and odds-tracking subscriptions, travel to sportsbooks and industry conferences, a laptop and software). The bettor is married, files jointly, takes the standard deduction, and has no other business income or deductions. Their spouse earns a stable $150,000 in W-2 wages.

node -e "
const GAINS = 500000;
const LOSING_BETS = 520000;
const BIZ_EXPENSES = 30000;

// Regime A: the law that would have applied to 2026 WITHOUT OBBBA -- the pre-2018
// rule the 2018-2025 sweep-in was originally scheduled to sunset back into. Business
// expenses are separate, uncapped Sec. 162 deductions.
const wagerDeductionA = Math.min(LOSING_BETS, GAINS);
const scheduleC_A = (GAINS - wagerDeductionA) - BIZ_EXPENSES;

// Regime B (counterfactual midpoint): the 2018-2025 TCJA sweep-in rule held flat,
// with NO 90% haircut -- isolates what the (already-permanent) sweep-in alone costs.
const combinedLosses = LOSING_BETS + BIZ_EXPENSES;
const wagerDeductionB = Math.min(combinedLosses, GAINS);
const scheduleC_B = GAINS - wagerDeductionB;

// Regime C: actual 2026 law under OBBBA Sec. 70114 -- sweep-in permanent AND capped
// at 90% of combined losses, still limited to gains.
const wagerDeductionC = Math.min(0.9 * combinedLosses, GAINS);
const scheduleC_C = GAINS - wagerDeductionC;

console.log('Regime A (pre-2018 rule, no sweep-in):  Schedule C net =', scheduleC_A.toFixed(2));
console.log('Regime B (2018-2025 rule, no haircut):   Schedule C net =', scheduleC_B.toFixed(2));
console.log('Regime C (2026 OBBBA, actual law):       Schedule C net =', scheduleC_C.toFixed(2));
console.log('  (wager deduction allowed: A=' + wagerDeductionA.toFixed(2) + ' B=' + wagerDeductionB.toFixed(2) + ' C=' + wagerDeductionC.toFixed(2) + ', combined losses=' + combinedLosses.toFixed(2) + ')');
console.log();

// Self-employment tax on Regime C's positive net profit (the bettor has no other SE
// or W-2 income of their own; spouse's wages are separate and don't share a wage base).
const netEarningsC = Math.max(0, scheduleC_C) * 0.9235;
const seTaxC = netEarningsC * 0.153; // 12.4% OASDI + 2.9% Medicare, IRC Sec. 1401, well under the \$184,500 2026 wage base
const halfSeDeductionC = seTaxC / 2; // IRC Sec. 1402(a)(12)
console.log('Regime C net SE earnings (Schedule C x 92.35%):', netEarningsC.toFixed(2));
console.log('Regime C self-employment tax (15.3%):', seTaxC.toFixed(2));
console.log('Regime C half-SE-tax deduction:', halfSeDeductionC.toFixed(2));
console.log();

// Household: MFJ, spouse \$150,000 W-2 wages, standard deduction, no other income.
const SPOUSE_WAGES = 150000;
const STANDARD_DEDUCTION_MFJ_2026 = 32200; // Rev. Proc. 2025-32 Sec. 4.14
const BR = [[24800,.10,0],[100800,.12,2480],[211400,.22,11600],[403550,.24,35932],
            [512450,.32,82048],[768700,.35,116896],[Infinity,.37,206583.50]]; // Rev. Proc. 2025-32 Sec. 4.01 Table 1 (MFJ)
const FLOOR = [0,24800,100800,211400,403550,512450,768700];
function incomeTax(ti) {
  if (ti <= 0) return 0;
  for (let i=0;i<BR.length;i++) if (ti<=BR[i][0]) return BR[i][2]+BR[i][1]*(ti-FLOOR[i]);
}
// Sec. 199A QBI deduction -- Schedule C profit is QBI, reduced by the deductible
// half of SE tax (Treas. Reg. Sec. 1.199A-3(b)(1)(vi)). Checked against both
// independent limits that can bind at this income level: the tentative 20%-of-QBI
// amount, and the 20%-of-taxable-income (before QBI) cap. (The SSTB phase-out is
// irrelevant either way -- this household's taxable income is far below the 2026
// MFJ threshold, so a full deduction applies regardless of gambling's unresolved
// SSTB status.)
function household(scheduleCNet, seTax, halfSeDeduction) {
  const totalIncome = SPOUSE_WAGES + scheduleCNet;
  const agi = totalIncome - halfSeDeduction;
  const tiBeforeQBI = Math.max(0, agi - STANDARD_DEDUCTION_MFJ_2026);
  const qbiBase = Math.max(0, scheduleCNet - halfSeDeduction);
  const tentative20 = 0.20 * qbiBase;
  const taxableIncomeCap = 0.20 * tiBeforeQBI;
  const qbiDeduction = Math.min(tentative20, taxableIncomeCap);
  const taxableIncome = Math.max(0, tiBeforeQBI - qbiDeduction);
  const fedTax = incomeTax(taxableIncome);
  return { scheduleCNet, taxableIncome, fedTax, seTax, qbiDeduction, total: fedTax + seTax };
}
const hA = household(scheduleC_A, 0, 0);
const hB = household(scheduleC_B, 0, 0);
const hC = household(scheduleC_C, seTaxC, halfSeDeductionC);
const fmt = h => 'taxableIncome=' + h.taxableIncome.toFixed(2) + ' qbiDeduction=' + h.qbiDeduction.toFixed(2) + ' fedTax=' + h.fedTax.toFixed(2) + ' seTax=' + h.seTax.toFixed(2) + ' totalFederalCost=' + h.total.toFixed(2);
console.log('Household A:', fmt(hA));
console.log('Household B:', fmt(hB));
console.log('Household C:', fmt(hC));
console.log();
console.log('Swing, C vs A (full OBBBA effect):', (hC.total - hA.total).toFixed(2));
console.log('Swing, C vs B (90% haircut alone):', (hC.total - hB.total).toFixed(2));
"

Output:

Regime A (pre-2018 rule, no sweep-in):  Schedule C net = -30000.00
Regime B (2018-2025 rule, no haircut):   Schedule C net = 0.00
Regime C (2026 OBBBA, actual law):       Schedule C net = 5000.00
  (wager deduction allowed: A=500000.00 B=500000.00 C=495000.00, combined losses=550000.00)

Regime C net SE earnings (Schedule C x 92.35%): 4617.50
Regime C self-employment tax (15.3%): 706.48
Regime C half-SE-tax deduction: 353.24

Household A: taxableIncome=87800.00 qbiDeduction=0.00 fedTax=10040.00 seTax=0.00 totalFederalCost=10040.00
Household B: taxableIncome=117800.00 qbiDeduction=0.00 fedTax=15340.00 seTax=0.00 totalFederalCost=15340.00
Household C: taxableIncome=121517.41 qbiDeduction=929.35 fedTax=16157.83 seTax=706.48 totalFederalCost=16864.31

Swing, C vs A (full OBBBA effect): 6824.31
Swing, C vs B (90% haircut alone): 1524.31

Four things to notice, in order:

1. The bettor's real cash result is identical in all three regimes. They won $500,000, lost $520,000 on bets, and spent $30,000 running the business — a $50,000 economic loss, full stop, regardless of which year's tax law applies. Only the taxable result moves.

2. Regime A (no OBBBA) reflects that economic reality; Regime C (actual 2026 law) inverts it. Under the pre-2018 rule, the $50,000 economic loss shows up as a genuine $30,000 deductible Schedule C loss (the wagering side nets to exactly $0 under its own 100%-up-to-gains cap, and the business expenses are separately, fully deductible). Under 2026 law, the same year produces $5,000 of taxable profit — a taxpayer with a real loss now reports a taxable gain.

3. The 90% haircut alone — isolated from the (already-permanent) expense sweep-in — is worth $1,524.31 in this example. Regime B shows what 2026 would look like if OBBBA had only extended the 2018–2025 rule without modifying it: $0 of taxable gambling income, not $5,000. The entire swing from B to C is the 90% cap's own contribution, separate from the sweep-in rule OBBBA merely preserved.

4. The self-employment tax doesn't care that the "profit" is phantom. $706.48 of the $16,864.31 total federal cost in Regime C is SE tax on $5,000 of Schedule C profit that exists only because of where the 90%-and-gains caps happened to land — money the bettor never had. Unlike the income-tax side, there's no standard deduction to absorb it: SE tax applies to net self-employment earnings regardless of the taxpayer's deductions elsewhere on the return.

The worked example applies a §199A QBI deduction to Regime C's $5,000 of Schedule C profit: $929.35, the tentative 20%-of-QBI-base amount ($4,646.76, after subtracting the deductible half of SE tax per Treas. Reg. §1.199A-3(b)(1)(vi)). This household's taxable income before QBI ($122,446.76) is far below the 2026 MFJ §199A threshold of $403,500 (Rev. Proc. 2025-32 §4.26), so the SSTB phase-out and the W-2-wage/property cap are both irrelevant regardless of whether a gambling trade or business is a specified service trade or business under §199A — an unresolved question, since gambling doesn't fit cleanly into any of the SSTB categories Treas. Reg. §1.199A-5(b)(2) lists. Only the 20%-of-taxable-income cap could bind at this income level, and it doesn't ($24,489.35, well above the tentative amount), so the full $929.35 applies.


What Didn't Change

  • The gains limitation itself is nothing new. Wagering losses have never been deductible beyond that year's winnings, in any version of §165(d) since long before TCJA. Only the 90% figure and the permanence of the expense sweep-in are 2026 developments.
  • A casual gambler who takes the standard deduction gets nothing from any version of this rule. Casual wagering losses are only usable as an itemized deduction on Schedule A; see our standard vs. itemized deduction guide for when itemizing is actually worth it for a freelancer.
  • Recreational losses were never deductible against ordinary Schedule C income from an unrelated freelance business. Nothing about §165(d) lets a freelance designer, say, net a bad weekend in Las Vegas against client revenue — the wagering-loss limitation is a closed system, walled off from every other income and deduction on the return except by the income-tax bracket math itself.

Audit Triggers & Common Mistakes

  1. Netting winnings and losses before reporting gross winnings. Gross wagering gains belong on the return in full; the loss deduction is a separate line item subject to its own limitation, not a netting exercise done off the books.
  2. Treating a professional gambler's business expenses as ordinary, unlimited §162 deductions. That was correct only through 2017, under the pre-TCJA rule the 2018–2025 sunset was originally scheduled to restore — it has not been correct since 2018, when the expense sweep-in first took effect, and OBBBA made that sweep-in permanent for 2026 rather than letting it lapse.
  3. Assuming the sweep-in rule and the 90% cap are the same change. They're not: the sweep-in has applied since 2018 and would have expired after 2025 without OBBBA; the 90% cap is brand-new for 2026 and stacks on top of it.
  4. Missing self-employment tax on a small positive Schedule C result that "feels like" a loss year. As the worked example shows, SE tax applies to whatever the statute's capped calculation produces, not to the taxpayer's actual cash outcome for the year.
  5. Assuming a casual bettor's losses are deductible without itemizing. They're a Schedule A item only; a taxpayer taking the standard deduction gets no benefit from them regardless of size.
  6. Not keeping contemporaneous, session-level win/loss records. The IRS's expectation is documented gains and losses across the year, not a single net estimate reconstructed after the fact — this matters more, not less, now that the deduction is capped below 100% and every dollar of the calculation is scrutinized.

How CentSense Helps

CentSense doesn't calculate your §165(d) limitation — that's a return-specific computation your CPA or EA should run — but it solves the recordkeeping problem that makes the calculation defensible in the first place:

  • Every receipt for a gambling-trade-or-business expense — travel, subscriptions, entry fees, equipment — scanned with AI and categorized the day it happens, so the "swept-in" expense total feeding the 90%-of-losses figure is a real, contemporaneous number at filing time, not a year-end reconstruction
  • A CPA-ready expense export that separates business expenses from personal spending cleanly, which matters specifically here because expenses and literal wagering losses now share one capped bucket and need to be identified and totaled correctly
  • Ongoing categorization all year, so a professional gambler can see their running combined-loss total against gains well before year-end, rather than discovering a phantom-income problem for the first time in April

For the broader self-employment tax and deduction-limitation mechanics this post assumes, see Self-Employment Tax Explained, the Excess Business Loss Limitation guide (relevant if your combined losses ever exceed the wagering context entirely), and our Standard vs. Itemized Deduction guide for the casual-bettor side of this rule.


Authoritative References


If gambling is your trade, not your hobby, 2026 is the first year the IRS can tax you on a losing season — know the number before your CPA has to explain it to you in April. Start a free CentSense account to track every business expense the moment it happens, so the records behind your wagering-loss calculation are complete and contemporaneous, not reconstructed. Free tier includes 10 AI scans per month.


This guide is general education for U.S. self-employed freelancers filing in 2026. It is not personalized tax advice, and whether a given gambling activity rises to a trade or business under the Groetzinger test is inherently fact-specific. Consult a CPA or EA before relying on any figure in this post for your own return.

Related reads

Continue learning with more tax and expense guides for freelancers.

Compare alternatives

See how CentSense stacks up to other expense and receipt tools for freelancers.