Cost basis engine

The chain records that tokens moved. It does not record whose they were.

That single missing fact is the difference between a sale and moving your own money between your own wallets, and no amount of on-chain analysis recovers it. What Accuren does instead is find every movement waiting on that fact, price the ones the chain already priced, and settle the rest when you answer once.

How a number gets made

Priced from the trade, not from a quote looked up afterwards

A tokenized stock bought on-chain leaves two legs in one transaction: the stock moving in, and dollars moving out. Pairing them recovers the price actually paid. Where that pairing does not exist, the basis is left null — a real acquisition price and a plausible one are not the same thing on a tax return.

Moving your own tokens is not a sale

Between two addresses you both watch, it is provable rather than asserted — you claimed control of both by adding them, so no label and no guess is needed.

Posting collateral is not a sale

You kept the exposure. What is a disposal is the liquidation afterwards, which is why the risk monitor exists on the next page over.

Bridging is not a sale

Same position, different chain. Nothing is realised and the basis carries across.

Four matching rules, and you choose

First in first out, last in first out, highest cost first, average cost pooling. The same trades give different gains under each, so the one in force is stated, never assumed.

Dividends with no transaction

The multiplier moves, your balance does not, and income arrives that no transfer-reading tool will ever see. It is measured from the multiplier at acquisition against the multiplier now.

A truncated history says so

If a wallet has more transfers than were read in one pass, the earliest acquisition we saw is a lower bound and is labelled as one — never quietly presented as the acquisition.

Where the chain runs out

A transfer we cannot explain gets read, cited, and handed back to you

When a movement has no dollar leg and no label on the other address, Accuren reads the transaction itself — the function that was called, whether the other address holds code, what a verified contract calls itself, every token leg in the same transaction — and says what shape it was. It cites the facts it used, and a reading whose citations cannot be matched to the chain is downgraded rather than shown.

It never claims to know who you are

There is no verdict meaning “this is your other wallet”. That fact exists only in your head, and inventing it would replace something you know with something we made up.

The reading changes no figure

It sits beside the honest “unknown”. What actually reclassifies a movement is you confirming who the counterparty is — and one confirmation settles every transfer that address was ever part of.