Polymarket USTrade data

Polymarket trade history: what each Polymarket US export holds

As of October 22, 2026, a Polymarket US trade history comes from the activity API, not the app: trades, resolutions, cash movements and rebates. Each trade carries price, quantity and the aggressor flag, with a nullable cost basis and realized P&L and no fee field. Fees sit in execution records kept 7 days and in the balance ledger, which like the CSV reports starts May 1, 2026.

By Owen Monagan, Founder & CEOUpdated From Polymarket US’s API reference, reporting page and changelog

Polymarket US data at a glance

Checked October 22, 2026
In-app export
None described: the portfolio shows cash, open positions and account value
Source
Activity API
GET /v1/portfolio/activities: trades, position resolutions, deposits, withdrawals, rebates and transfers
Source
Trade cost basis and realized P&L
Both fields are nullable in the schema; the schema has no fee or commission field
Source
Balance ledger
GET /v1/funding/balance-ledger/download: a CSV of every cash balance change, including fills and fees; added May 26, 2026, and nothing before May 1, 2026
Source
CSV reports
Documented for the institutional API, with a historical floor of May 1, 2026
Source
Execution records
Kept 7 days from July 16, 2026; stored execution history was reset in the August 27, September 1 and September 2, 2026 maintenance windows
Source

Sources

Where does a Polymarket US trade history come from?

Six places, each covering a different slice and starting on a different date.

The portfolio page describes cash, open positions and account value, with no export, so everything below is read through the API or downloaded as CSV. This page is the reference for what each source holds; the order to pull them in for a filing is in how to file Polymarket taxes.

SourceWhat it holdsFromFees
Portfolio page (app)Cash, open positions, account valueNow onlyNo
Activity APITrades, resolutions, deposits, withdrawals, rebates, transfers–No fee field on a trade
Execution recordsEach execution, with commission and trade dateLast 7 daysYes
Balance ledger CSVEvery cash balance changeMay 1, 2026 (added May 26)Yes
CSV reportsTrade, execution, position and fee reportsMay 1, 2026Fee report
Price historyYes and No display prices by market, 1H to ALL intervalsPublicNot applicable
From Polymarket US’s API reference, reporting page and changelog, checked October 22, 2026.
In-app export
None described: the portfolio shows cash, open positions and account value
Source
Reporting page
CSV trade, execution, position and fee reports; no tax, 1099, cost basis or P&L content
Source

Activity feed

What is in the Polymarket US activity feed?

Nine activity types in one feed, two of them trading.

GET /v1/portfolio/activities returns your trades, position resolutions, deposits, withdrawals, rebates and transfers, each tagged with one of nine types in the Get Activities schema. The schema describes each only as a “Type of activity”, so the names below are all it gives: TRADE, POSITION_RESOLUTION, ACCOUNT_DEPOSIT, ACCOUNT_ADVANCED_DEPOSIT, ACCOUNT_WITHDRAWAL, TRANSFER, REFERRAL_BONUS, TAKER_FEE_REBATE and LIQUIDITY_PROGRAM.

A trade also carries a state field whose values include busted and rejected, so not every TRADE item is a completed fill. Taker rebate credits appear as ACTIVITY_TYPE_TAKER_FEE_REBATE from May 26, 2026; before that date they were shown as a referral bonus, so one rebate program can sit under two types in one year.

Activity API
GET /v1/portfolio/activities: trades, position resolutions, deposits, withdrawals, rebates and transfers
Source
Activity types
TRADEPOSITION_RESOLUTIONACCOUNT_DEPOSITACCOUNT_ADVANCED_DEPOSITACCOUNT_WITHDRAWALREFERRAL_BONUSTRANSFERTAKER_FEE_REBATELIQUIDITY_PROGRAM
Source
Taker rebate credits
ACTIVITY_TYPE_TAKER_FEE_REBATE in the activity API, from May 26, 2026; earlier shown as a referral bonus
Source

Trade fields

What fields does a Polymarket US trade carry?

Price, quantity, the aggressor flag, a cost basis and realized P&L. Two can be empty, and there is no fee.

FieldWhat it holds
PriceThe price of the fill
QuantityContracts filled
isAggressorWhether your order was the aggressor
costBasisCost basis for the trade; nullable
realizedPnlRealized profit and loss; nullable
Fee or commissionNo such field in the schema
From the Get Activities schema, checked October 22, 2026.

Because costBasis and realizedPnl are nullable, neither can be totaled for a year without checking for gaps first. The docs also do not say whether a cost basis includes fees, so the fee on each trade has to come from the executions or the ledger.

Each trade
Price, quantity, isAggressor, cost basis and realized P&L; no fee field in the published schema
Source
Trade cost basis and realized P&L
Both fields are nullable in the schema; the schema has no fee or commission field
Source

Balance ledger

What does the Polymarket US balance ledger record?

Every cash balance change from May 1, 2026, fills and fees among them.

GET /v1/funding/balance-ledger/download streams a CSV of every change to your cash balance, fills and fees included, according to the changelog entry that added it on May 26, 2026. Like the CSV reports, it serves nothing before May 1, 2026. It and the position ledger are documented for the institutional API, where both require the read:positions scope and are limited to about 5 downloads a minute per firm.

Balance ledger
GET /v1/funding/balance-ledger/download: a CSV of every cash balance change, including fills and fees; added May 26, 2026, and nothing before May 1, 2026
Source
Position and balance ledgers
Documented for the institutional API; both require its read:positions scope, at about 5 downloads a minute per firm
Source

CSV reports

What do the Polymarket US CSV reports cover?

Trade, execution, position and fee reports, and nothing before May 1, 2026.

The reporting page, written for the institutional API, lists four CSV reports: trade, execution, position and fee. Its historical floor is May 1, 2026, and pre-floor data is not retrievable. The fee report’s columns are not described, and the page has no tax, 1099, cost basis or P&L content.

A separate endpoint, POST /v1/valuations/accounts/statement/download, added January 4, 2026, returns multi-account summaries as CSV. Its contents are not described, and nothing in the docs calls it a tax statement.

CSV reports
Documented for the institutional API, with a historical floor of May 1, 2026
Source
Fee reports
One of four CSV reports (trade, execution, position and fee), nothing before May 1, 2026; the fee report’s columns are not described
Source
Statement download endpoint
POST /v1/valuations/accounts/statement/download: multi-account summaries as CSV, added January 4, 2026; its contents are not described
Source

Executions

How long does Polymarket US keep execution records?

7 days, since July 16, 2026, and reset three times since in maintenance windows.

Execution-level responses carry commission and trade date fields from May 4, 2026. From July 16, 2026, executions are kept 7 days, and the changelog records stored execution history being reset in the maintenance windows of August 27, September 1 and September 2, 2026. It says “clear” for the first and “archive” for the other two, with the advice to “export and retain any execution data you need”. How that fits into a filing is step 2 of the walkthrough.

Execution records
Kept 7 days from July 16, 2026; stored execution history was reset in the August 27, September 1 and September 2, 2026 maintenance windows
Source
Before a maintenance window
The changelog says to “export and retain any execution data you need”
Source
Commission on executions
Commission and trade date fields on every execution-level response, from May 4, 2026
Source

Price history

Where does Polymarket US price history come from?

A public series keyed by market slug, built from display prices rather than trades.

The Get Price History endpoint needs no key. It is keyed by a market’s slug and returns Yes and No display prices derived from the order book, not the prices of executed trades. It serves intervals from 1H to ALL; the ALL series is three-hourly for newer markets and daily for longer histories, so a December 31 value is read from a point in whichever series comes back. Using it for that value is step 4 of the walkthrough.

Price history
Public, keyed by market slug: book-derived Yes and No display prices, not trades, at intervals from 1H to ALL (ALL is three-hourly for newer markets)
Source

Access

What does reading Polymarket US account data take?

An API key from polymarket.us/developer for the activity feed; the ledgers and CSV reports are documented for the institutional API.

The activity feed, positions and balances are read with the key from polymarket.us/developer, created once identity checks are done. The documentation does not say whether that key can call the ledger and CSV report endpoints, which are documented for the institutional API. How the key is made, and what it means that no read-only scope is described for it, is on Polymarket API key. Realize’s Polymarket client reads your balances, activities and positions, the public price history and the market feed, and implements no endpoint that places an order.

Questions

Questions people ask.

Can I download my Polymarket US trade history from the app?
No export is described. The portfolio page shows your cash balance, open positions and total account value. The trade history comes from the activity API, and from May 2026 the balance ledger and CSV reports.
Does a Polymarket US trade show the fee I paid?
Not in the published schema. A trade in the activity API has no fee or commission field. Execution-level responses carry a commission field from May 4, 2026, and the balance ledger includes fees back to May 1, 2026.
Why are costBasis and realizedPnl empty on some trades?
The Get Activities schema marks both fields as nullable, so an empty value is allowed. The docs do not say when either is left empty.
What is the earliest Polymarket US data I can download as CSV?
May 1, 2026, for the trade, execution, position and fee reports; pre-floor data is not retrievable. The balance ledger download was added May 26, 2026, and like the CSV reports it serves nothing before May 1, 2026.
Is the Polymarket US price history a list of trades?
No. It is public, keyed by market slug, and built from Yes and No display prices on the order book, not from executed trades. It comes in intervals from 1H to ALL, and ALL is three-hourly for newer markets.

Sources5 documents

Where each fact comes from.

Every figure above links to one of these, read on the date shown.

Also on Realize

From the data to a filed year.

The step-by-step filing, the fees inside these files, and the key that reads them.

Price your Polymarket US year three common ways.

Connect Polymarket US for a free estimate under each treatment.

Get started