Cost basis types
Cost basis tracks what you paid for the tokens you hold, so that when you dispose of some, the gain or loss can be measured against what those tokens actually cost.
The cost basis type is the rule for deciding which acquisition a disposal draws its cost from. It is not a presentation choice: two entities with identical transactions and different types will report different realised gains.
Beta
Cost basis is marked Beta in the app. It is available in accounting entities only. See portfolio or accounting.
The five types
| Type | How a disposal is costed |
|---|---|
| AVCO | Average cost. Every acquisition goes into one pool, and the pool carries a running average price. A disposal takes its cost at that average. |
| FIFO | First in, first out. A disposal draws from the oldest acquisition still held. |
| LIFO | Last in, first out. A disposal draws from the most recent acquisition. |
| HIFO | Highest in, first out. A disposal draws from the most expensive acquisition still held. |
| Spec ID | Specific identification. You choose which acquisitions each disposal sold from; until you do, the disposal has no acquisition cost or realised PnL. See identifying lots. |
The important split is not the five names but the two behaviours behind them:
- AVCO is pooled. There are no lots. Quantity and cost are two running totals, and the average price is one divided by the other.
- FIFO, LIFO, HIFO and Spec ID match lots. Each acquisition is a distinct lot with its own quantity and price, and every disposal is matched against specific lots. FIFO, LIFO and HIFO pick the lots by a fixed rule; Spec ID lets you pick them.
That distinction decides how the opening position is entered.
How each type starts
An opening balance for AVCO is a pooled quantity and a carrying amount: one number for how much, one for what it cost.
Individual acquisition lots cannot be reconstructed from those two figures, so the lot types start from opening lots instead: the holdings you already had before the opening date, entered one lot at a time with the date each was acquired, its quantity and what it cost. Disposals of those holdings are then matched against the lots like any other acquisition. See opening lots.
This has a real consequence for what you pick:
- AVCO needs only a total balance and cost, which SimplyLedger suggests for you.
- FIFO, LIFO, HIFO and Spec ID need your own acquisition records for anything held before the opening date. Leave the opening lots empty and any pre-existing holdings have no cost to match against, so disposing of them reports the full proceeds as gain.
- If you do not have lot-level records, AVCO is the type to use, or set the opening date early enough that the acquisitions you care about fall inside the period. That only works if the history exists to be counted: reconciled postings for the token.
Choosing the type
The type is set per token, on that token's cost basis opening balance. Select Reconcile in the sidebar's icon rail, then Cost Basis, and select a token that has no opening balance yet: the create form opens directly.
| Field | Notes |
|---|---|
| Date | The date the opening position is as at. Defaults to 1 January of the current year. Future dates are disabled. |
| Cost basis type | AVCO, FIFO, LIFO, HIFO or Spec ID. Defaults to AVCO. |
| Period | Monthly or Yearly: how the token's period summaries are grouped. |
| Balance and Cost | The opening quantity and what it cost. AVCO only. |
| Opening lots | The holdings before the opening date, lot by lot. FIFO, LIFO, HIFO and Spec ID only. |
| Realized PnL before opening date | Optional, any type. Realised PnL carried over from an earlier report. See opening balances. |
For AVCO, the balance is suggested for you, summed from the token's token card closing balances on the day before the opening date. For the lot types, the same total is shown next to your lots so you can check they add up. See opening balances for how that figure is built and what to check before relying on it.
Changing the type
There is no edit. To change a token's type, delete the opening balance and create a new one from the token's cost basis page.
Everything downstream is derived, so it all recomputes from the new opening position: running balance, running cost, average price, realised PnL per disposal, and the period summaries.
Deleting the opening balance of a lot type also removes its opening lots and any Spec ID lot selections, so have your lot records (or a CSV of them) to hand before you recreate it.
Check what has already been posted
If you have posted realised PnL for a period, changing the type changes the figures those postings were based on. The postings themselves are not rewritten. Reconcile the two deliberately rather than discovering the difference at year end.
Where the type shows up

The Cost Basis list has a row per token with a Set or Not set badge, the opening date, the type, the period, and the opening balance and cost.
A token's own page uses the type for everything it derives: the running average price on each row of the timeline, the realised PnL on every disposal, and the acquisition cost of what was sold in each period summary. For the lot types it also shows which lots each disposal used. See transactions and summaries.
Uncategorised rows are not a type problem
A row is left out of the calculation when its category does not have Use in cost basis switched on, so it is neither an acquisition nor a disposal. That is fixed under categories, not by changing the type.
Next
Opening balances is where the type is chosen, and where a token's cost basis timeline begins.