Tax basics · Kalshi

Prediction Market Capital Gains and Form 8949

Filing Kalshi and Polymarket trades as capital gains: one Form 8949 row per closed position, settlement as a sale, the $3,000 loss limit and the carryforward.

By Owen Monagan8 min read
Published
On this page

Under standard capital treatment, every prediction market position you sold, or that settled, during the year is one row on Form 8949. Each row carries what you actually paid and how long you actually held it, so almost every row is short-term. The totals carry to Schedule D. A net loss offsets other capital gains first, then up to $3,000 of ordinary income ($1,500 married filing separately), and the rest carries forward with no end date.

What does filing prediction market trades as capital gains mean?

Standard capital treatment reads each event contract as an ordinary capital asset under §1221. You owe tax, or get a deduction, when a position is sold or settles, and the holding period you actually had decides whether the result is short-term or long-term. Nothing happens to a position while it stays open.

It is one of three common treatments traders use, beside Section 1256 and gambling. No IRS guidance or court ruling addresses whether event contracts are Section 1256 contracts, and none says they are wagers either. Standard capital treatment is the reading that needs no Section 1256 argument. That makes it simpler to support, not settled. This guide covers the federal return; state treatment is out of scope.

What goes on each Form 8949 row?

One row per closed lot. A lot is a quantity of one contract bought at one price, and Realize matches each sale to the earliest purchase still open in that contract, first in, first out. Each row carries a description (quantity, side and market), the date acquired and the date sold or settled. Then come proceeds in column (d), cost basis in column (e) and the gain or loss in column (h).

The Form 8949 instructions count purchase costs such as commissions in basis, and take selling expenses out of proceeds when no Form 1099-B was issued. Realize puts every venue fee on the lot in basis instead. The gain or loss in column (h) comes out the same either way.

Which box you check depends on a form you did not get. Box C (short-term) and box F (long-term) are for trades not reported to you on a Form 1099-B or Form 1099-DA. No prediction market venue issues a Form 1099-B for event contract trades. Fractional quantities are normal.

Here are three short-term positions from a worked case in the spec the engine is built against (illustrative):

Form 8949, Part I, box CBasis (e)Proceeds (d)Gain or (loss) (h)
Position A$5,000$2,000($3,000)
Position B$4,000$1,500($2,500)
Position C$1,000$1,800$800
Part I total($4,700)

For the row-by-row version built from Kalshi's own export, see how to file Kalshi taxes as capital gains.

Is a settled contract a sale?

Under this treatment, yes. A contract that resolves is disposed of at its payout: $1.00 a contract on the winning side and $0.00 on the losing side, on the day the market settles. A contract that expired worthless is still a row, with $0 proceeds and its full cost as basis. It is tempting to drop those rows because nothing was sold, but dropping one deletes the basis that makes it a loss.

The Code reaches this through §1001, and §1234A treats the expiration or termination of certain contract rights as a sale of a capital asset. No IRS guidance applies either section to event contracts by name, so treating settlement as a sale is a point to confirm with your preparer.

Short-term or long-term?

A position is long-term if you held it more than one year (§1222). The IRS counts from the day after you acquired it, up to and including the day you disposed of it.

Almost every prediction market row is short-term, because contracts resolve when their event happens. A long-term row needs a position held for more than a year, which means it was opened in an earlier calendar year. Expect Part II to be empty in most years.

Does a position still open on December 31 count?

Not under standard capital treatment. There is no year-end mark, so a position still open on December 31 produces no gain or loss this year. It lands on the return for the year it is sold or settles, at its original cost and purchase date. If it was held more than a year by then, it is long-term.

That is the largest single difference from Section 1256, where an open position is valued at the December 31 close as if sold, on Form 6781. In the engine's cross-route cases, a position bought for $5,000 and worth $1,000 at the December 31 close is a $4,000 loss this year under Section 1256. Under standard capital treatment it is nothing this year, and the whole result arrives when the position closes.

How do Form 8949 totals reach Schedule D?

Part I with box C totals to Schedule D line 3, and Part II with box F to line 10. A short-term loss carried in from last year goes on line 6 and a long-term one on line 14. Short-term items net to line 7 and long-term items to line 15, those two combine on line 16, and if the result is a loss, line 21 applies the annual limit.

Realize builds Form 8949 and the figures for Schedule D. It does not produce Schedule D itself or the Capital Loss Carryover Worksheet. Schedule D nets these trades against everything else you sold during the year, stock and crypto included, and Realize sees none of that. A Schedule D built from prediction market trades alone would look finished while missing part of your year.

How much of a net capital loss can you deduct?

A net capital loss first offsets your other capital gains, with no limit. What is left reduces ordinary income by up to $3,000 a year, or $1,500 if married filing separately, under §1211(b). The deduction comes off in arriving at adjusted gross income (§62(a)(3)), so you get it whether or not you itemize.

The three positions above net to a $4,700 loss. With no other capital activity, $3,000 comes off ordinary income, worth $720 to a single filer in the 24% bracket, and $1,700 carries forward. Filing separately, $1,500 comes off, worth $360, and $3,200 carries. If your taxable income is too small to use the whole deduction, the unused part is not lost. Under §1212(b)(2) it carries forward too, and the Capital Loss Carryover Worksheet in the Schedule D instructions does that arithmetic. For what a losing year is worth across all three treatments, see are prediction market losses tax deductible.

How does a capital loss carryforward work?

What the limit leaves carries forward under §1212(b) with no end date, and it keeps its short-term or long-term character. Each year's deduction uses short-term loss first, so long-term loss tends to be what survives.

Take a year with a $4,000 short-term loss and a $2,000 long-term loss. $3,000 comes off ordinary income, taken from the short-term side. $1,000 carries forward as short-term and $2,000 as long-term. In the first example, the $1,700 carryforward enters Schedule D line 6 next year. With no new trading result and enough income to absorb it, it is used in full, worth $408 at 24%.

There is no carryback under this treatment. The three-year carryback in §1212(c) is for net Section 1256 contract losses. Realize's estimate starts each year with no carryforward from before you connected, so add any earlier carryforward with your preparer.

How is a winning year taxed?

A net short-term gain is ordinary income, taxed at your ordinary rates. A net long-term gain is taxed at 0%, 15% or 20%, stacked on top of your other income. A large enough net gain can also owe the 3.8% net investment income tax under §1411. For a single filer it starts above $200,000 of modified adjusted gross income.

Take a single filer with $150,000 of taxable income, a $3,000 short-term gain and a $6,000 long-term gain. The short-term part costs about $720 at 24% and the long-term part $900 at 15%, about $1,620 in all. Netting decides the character. Short-term losses of $8,000 against a $12,000 long-term win leave a $4,000 long-term gain. That is about $600 at 15%, where the same $4,000 held short-term would be about $960. For how Section 1256 would split the same gain 60/40, see the 60/40 rule and our page for profitable traders.

How does standard capital compare with Section 1256 and gambling?

Standard capitalSection 1256Gambling
Treats a contract asAn ordinary capital assetA regulated futures contractA wager
Holding periodActual: more than a year is long-termIgnored: 60% long-term, 40% short-termNot relevant: winnings are ordinary income
Open positions on December 31Nothing until sold or settledValued at the December 31 close, as if soldNo year-end mark
Net loss against other incomeUp to $3,000 a year, after offsetting gainsUp to $3,000 a year, after offsetting gainsNone: 90% of losses offset winnings
Unused lossCarries forward, no end dateCan carry back three years against Section 1256 gains, then forwardLost: no carryforward
What Realize buildsForm 8949, and the figures for Schedule DForm 6781 and its transaction statementA session log, with figures for Schedules 1 and A

Note: the Section 1256 column assumes event contracts qualify, and the gambling column assumes they are wagers. No IRS guidance or court ruling settles either. Gambling losses count from 2026 at 90%, against winnings, and not at all unless you itemize. This covers the federal return.

On a purely losing year the two capital treatments give the same deduction: in the engine's cross-route cases, a $4,700 loss is $3,000 deducted and $1,700 carried either way. They part on three things: open positions at year end, the 60/40 split on gains, and the carryback. A $10,000 short-term gain for the same single filer is about $2,400 under standard capital treatment and about $1,860 under Section 1256. A long-term gain can be taxed lower under standard capital treatment than under the 60/40 split. Which treatment fits your year is a decision for you and your preparer. Filing the same way every year matters more than which one gives the lower number this year.

How Realize helps

Realize connects to your Kalshi and Polymarket US accounts with read access and rebuilds every position from the trades. On this treatment it builds Form 8949, short-term rows in box C and long-term rows in box F. It also builds the same rows as a CSV and the figures for Schedule D. Every row traces back to the trades that produced it. The forms open for the 2026 filing season. How Realize checks its numbers explains how each row is traced.

The bottom line

Standard capital treatment puts each closed position on Form 8949 at its real cost and holding period, treats a settlement as a sale, and marks nothing on December 31. A net loss offsets other gains, then up to $3,000 of ordinary income a year, and the rest carries forward. It is one of three treatments, none of them settled for event contracts. Keep complete records and confirm your own position with a qualified tax professional before you file. See the Prediction Market Tax Center for the rest, and our tax disclaimer.

Questions people ask

Do I need a Form 1099-B to file prediction market trades on Form 8949?

No. Form 8949 has a box for exactly this case: box C for short-term trades and box F for long-term trades that were not reported to you on a Form 1099-B or Form 1099-DA. No prediction market venue issues a Form 1099-B for event contract trades, so these rows go in box C, or box F for anything held more than a year.

Does a contract that expired worthless go on Form 8949?

Under standard capital treatment, yes. A contract that settles on the losing side is disposed of for $0, so it is a row with $0 proceeds and its full cost as basis. Leaving it off drops the basis that makes it a loss.

Do positions still open on December 31 go on this year's Form 8949?

Not under standard capital treatment. A position counts in the year it is sold or settles, at its original cost and purchase date. Section 1256 treatment is different: it values open positions at the December 31 close as if they were sold.

Can a capital loss be carried back to an earlier year?

Not under standard capital treatment. A net capital loss offsets other capital gains, then up to $3,000 of ordinary income a year ($1,500 married filing separately), and the rest carries forward with no end date. The three-year carryback in §1212(c) is for net Section 1256 contract losses.

Does the wash-sale rule apply to event contracts?

It is unsettled. Section 1091 reaches losses on stock or securities, and no IRS guidance says whether an event contract is either. Realize does not compute wash-sale adjustments, so if you closed a contract at a loss and bought the same one back within 30 days, raise it with your preparer.

Price your year three common ways.

Your estimate is free. Forms for tax year 2026 open for filing in 2027.

Get started