# PnL Tracking

> Cost-basis profit and loss at wallet and per-token level, with anchors for custom baselines.

**PnL Tracking** is the heart of **Wallet Bot**. Every portfolio carries a full *cost-basis* profit-and-loss breakdown, computed from the wallet's public trade history — both at the wallet level and for each individual token you hold.

## The PnL Breakdown

From the balance screen, tap **📊 PnL** to open the wallet PnL panel. Scroll down in any token's [detail panel](/docs/wallet/token-details) to see the same breakdown for one token.

### *Total PnL*

*Realized* plus *Unrealized*, shown in USD and as a percentage of *Cost basis*. This is the headline number.

### *Realized*

Profit or loss from positions you have closed — what the wallet sold for, minus what it paid.

### *Unrealized*

Profit or loss on positions still open, valued at current prices.

### *Cost basis*

The total amount invested across all of the wallet's entries into the tokens currently contributing to PnL.

### *Net invested*

*Cost basis* minus proceeds already returned to the wallet through sales — a quick read on how much of your original capital is still on the table.

> **INFO**
>
> The bot displays PnL over a rolling **1-year window**, which keeps the cold-compute time bounded and the numbers focused on recent activity.

## PnL Modes

On the balance screen, the PnL column can be shown in one of four modes, cycled from [Display Settings](/docs/wallet/display-settings):

1. **Percentage** — `+12.3%`
2. **USD** — `+$1,234.56`
3. **Both** — `+12.3% [$1,234.56]` — the sign comes from the percentage; the dollar amount is shown unsigned inside brackets.
4. **None** — hides the column entirely.

## Anchors — Zeroing PnL

An *anchor* lets you measure profit from a moment you choose — handy when you want to see performance since today, or since a market event, instead of since the wallet first moved.

- **⊘ Zero PnL** captures the current values as the anchor.
- From that point on, displayed PnL is `current − anchor`.
- **⊘ Clear Anchor** removes the anchor and restores total PnL since wallet origin.

Anchors exist at two levels:

- **Wallet anchor** — set from the wallet PnL panel, applies to the portfolio's total and every row on the balance screen.
- **Per-token anchor** — set from a token's detail panel. A per-token anchor applies across **every portfolio you own that holds that token**, so the same token's displayed PnL is consistent wherever it appears.

> **NOTE**
>
> If you tap **⊘ Zero PnL** on a token the bot has no PnL values for yet, you will see a short *"no PnL data yet"* toast and no anchor is set. Refresh the portfolio, wait a moment, and try again once the cost-basis calculation has caught up.
