Verified, not claimed

How trade verification works on Trade with Trust

Trading social media runs on unverifiable screenshots — and screenshots are trivially faked. Trade with Trust solves this by verifying every trade against real brokerage data, so a track record is something you can prove instead of just post.

The problem with screenshots

Screenshots, P&L images, and "trust me" posts are meaningless as evidence. They can be edited in seconds, cherry-picked from a single lucky day, or fabricated entirely from templates. A trader can hide months of losses, crop out size, or reuse an old win as today's call — and no one following along can tell the difference. The entire trading corner of the internet runs on this dynamic, and it's why so many followers get burned.

The problem isn't that some traders exaggerate. It's that there's no way to know a track record is real. That's what verification is for. Every trade on Trade with Trust originates from the broker, not the trader — the trader can choose whether to publish it, but they cannot invent it, edit its price, or change its P&L after the fact.

Two ways we verify your trades

Brokerage connection (read-only)

Connect your broker through a secure, read-only link established by SnapTrade — a regulated financial-data aggregator used by major fintech products — or directly through the broker's own OAuth flow. We never receive your broker credentials, and the token we do receive is scoped to reading trade history and positions. We cannot place trades, cancel trades, move cash, or take any other action on your account. Once connected, your fills, prices, quantities, timestamps, and realized P&L flow in automatically as they settle.

Statement upload (PDF)

Upload official broker statements as PDFs — the same documents your broker would send to a regulator or produce in a tax audit. Our parser identifies the broker's statement format, extracts each transaction row (buys, sells, options exercises, assignments, expirations, dividends, fees), and reconciles fills into round-trip trades. This flow supports brokers we don't yet connect to live, historical years, and closed accounts.

What data we actually pull

From a connected broker, we read three narrow slices of your account: (1) executed trades — ticker, side, quantity, price, timestamp, fees, and any options-specific fields like expiration, strike, and multiplier; (2) current open positions — ticker, quantity, average cost, and side; and (3) enough account metadata to distinguish one brokerage account from another so multi-account traders can control what appears publicly. We do not pull cash balances, deposit or withdrawal history, tax IDs, beneficiary information, or personally identifying data. Those categories are not shown on your profile, are not stored in a form that could reconstruct them, and are not exposed by any public endpoint.

How per-trade reconciliation works

Brokers report activity as individual fills, not as complete trades. Reconciliation is the step that turns those fills into round-trip trades — an entry paired with an exit — using the same first-in-first-out (FIFO) accounting almost every retail broker applies by default for tax lots. When you buy 100 shares of a ticker and later sell 50, FIFO pairs the sale against the earliest 50 shares of the buy, producing a closed trade with a definite entry price, exit price, quantity, and realized P&L. Remaining shares stay open until they're sold.

Options add complexity because assignments, exercises, and expirations are separate transaction types that need to consume open contracts correctly, and multi-leg structures (spreads, iron condors, calendars) must reconcile leg-by-leg. Every one of those cases is handled explicitly so realized P&L on a closed options trade matches what the broker actually settled. For live-connected accounts, we additionally reconcile the current open-position list from the broker against our FIFO-derived positions on every load, and treat the broker's live snapshot as the source of truth — that's how we drop stale phantoms and correct any FIFO understatement.

How aggregate stats are computed transparently

Every stat on your profile — total P&L, win rate, best trade, worst trade, average hold time, percentage return — is computed on the fly from your verified closed trades using formulas anyone can inspect: win rate is (winning trades ÷ total closed trades), total P&L is the currency-aware sum of realized P&L per closed trade, and return percentages are computed per trade rather than blended across currencies. Because trades are currency-aware, USD trades and non-USD trades are never mixed into a single dollar figure; rankings across users use percentage return and win rate, never raw currency totals.

Nothing is smoothed, back-filled, or manually adjustable. If a trade is edited on the broker's side (a rare correction), the next sync overwrites the local record. Stats update as trades are added or removed; there is no separate "reported" number.

Open-position verification

Closed-trade verification confirms the past. Open-position verification confirms the present — the piece screenshots can never do. When a trader publicly declares an open position (for example, "long NVDA from $482"), Trade with Trust checks against the connected broker in real time to confirm the position is actually held at the declared entry and size, and continues to re-check while the position stays open. When the position closes, the exit and P&L are pulled the same way and attached to the original public post.

This eliminates the "I called it" post after the fact. If the position wasn't publicly declared and verified while it was live, the platform doesn't count it. Followers see who actually held the trade, not who says they did.

Security architecture

The core security guarantee is simple: Trade with Trust cannot trade, withdraw, or move money in your account. Read-only access is enforced by the broker itself, not by our application code — even a full compromise of our servers could not be turned into unauthorized trading in your account. Broker credentials never touch our infrastructure. For OAuth brokers (Schwab, Interactive Brokers, E*TRADE, Tradier, TradeStation, Alpaca) you authenticate on the broker's own domain and grant a read-only scope. For credential-based brokers connected through SnapTrade, credentials are entered into SnapTrade's PCI-compliant interface, and we only ever receive a scoped read-only token.

Personally identifying data — legal name, account numbers, tax ID, cash balances, deposits, withdrawals — is never rendered on your public profile and is not returned by any public API endpoint. The public profile route uses a dedicated public-safe view that cannot leak private columns even in principle. Row-level security policies on the database enforce that a user can only ever read or write their own data. Statements you upload are stored securely, used only for verification, and never displayed publicly.

You control which brokerage accounts feed your verified history and which individual trades or positions become public posts. Nothing on your account is public by default. Disconnecting a broker revokes access immediately at the broker level, and deleting a post removes it from your profile and from every follower's feed.

Why verification matters

For followers: know who's actually profitable — over time, not on their best day — before you follow, before you copy an idea, before you consider paying for anything. Verified stats mean win rate, hold times, and P&L that came from a real broker, not a canvas element.

For traders: build credibility that can't be faked. In a space full of unverifiable claims, a verified track record stands out — and it compounds. Every trade you post adds another proven data point to a record that speaks for itself.

Start building a verified record

Connect your broker or upload a statement — it takes about two minutes and your trades stay private until you choose to post.