Why use CryptoTaxEdge instead of Claude, ChatGPT, or Grok?
Honest answer first: on a fair test with a published, frozen methodology, the best flagship model's accuracy was a statistical tie with ours on the hardest-to-classify transactions. We ran that test ourselves — 388 transactions, each with an adjudicated correct answer, the models given the same decoded transaction data our engine works from — and we publish the number: 93.0% for the best frontier model, 92.3% for our engine on the same 388 transactions — a 0.7-point difference, well inside the margin of error. If raw accuracy on a single classification were the whole job, you could ask a chatbot.
It isn't the whole job. Here is what we measured when we pushed further — 96 fresh transactions arranged from simple transfers up to exotic DeFi, three frontier models (Claude Sonnet, ChatGPT's GPT-5.5, and Grok, August 2026 snapshots), every transaction run at least twice with input identical down to the byte.
The same question, different answers
On simple transactions, the models change their answer between identical runs 2.1% of the time. On exotic DeFi — yield-stripping, restaking, leveraged looping — that climbs to 17.4% — roughly one answer in six changing simply because you asked again. A classification that changes when you ask the same question twice is not a work product a practitioner can put a name on. And the changes are not cosmetic: in the hardest band, 12 of the 25 answer changes also changed the tax treatment.
Confidence that doesn't track reality
Across that same climb from simple to exotic, the models' stated confidence slips only nine points (92 to 83) and they decline to answer under 6% of the time. Run all three models on the same exotic transaction and they disagree on the transaction type 44.5% of the time — and in over half of those disagreements (23 of 41), every one of them reports confidence of 70 or higher. The instability rises roughly eightfold; the uncertainty signal barely moves.
Our engine's behavior across the same ladder is the inverse: its needs-review rate climbs from 19% on simple transactions to 44% on exotic ones. When a transaction gets harder to classify, it escalates to a human instead of guessing. That asymmetry — instability that outruns the uncertainty signal, versus escalation you can see — is the difference between an AI answer and evidence a professional can work from.
The failure you can't catch by double-checking
The sharpest single finding: a redemption of a Pendle principal token (PT) after its maturity date. All three models confidently labeled it a generic swap in every run — confidence 82 to 94, no flag, no hesitation. Read once, on the transaction data alone, nothing forced "redemption" over "swap" — the fact that decides it, whether the position had matured, isn't in the transaction record; it lives in the protocol's own state. And because the wrong answer is stable, running the model twice to check yourself catches nothing. In this instance the tax bucket happened to survive — both reads are dispositions — but the character and basis analysis a practitioner would want flagged was invisible to every model, every time.
What happens when you actually just ask
Everything above required handing the models our enrichment packet — the decoded transfers, contract labels, and receipt our pipeline produces. Nobody who asks a chatbot supplies that. So we ran the honest version of the title question: the same 388 transactions, the same three models, given only what a real user enters into a chat window — the transaction hash and the chain.
All three models declined to classify every single transaction. 1,164 calls, 1,164 refusals to answer. Zero answers, zero guesses, zero hallucinated classifications — every response was an honest refusal for lack of evidence.
If a chatbot has ever given you transaction details from just a hash, one of three things happened: it browsed — fetched a block-explorer page and read it back to you; it recognized a famous transaction from its training data; or it was guessing — plausible details with no evidence behind them, which is the other half of the problem. None of these contradicts this result. To say anything true about a transaction it has never seen, a model first has to get an evidence layer. A block-explorer page is a partial one — it shows the transfers, but not instrument semantics, protocol state, or a verified taxonomy — and the ladder results above already show what happens once a model has good evidence in hand: that is where the 17.4% changed answers and the confident disagreements were measured. Evidence is where the instability starts, not where it ends. To the models' credit, that is exactly the right behavior. It is also the whole argument: the 93% is unreachable without the evidence layer. Hand a model only the hash and you get a refusal — the fetching, decoding, and enrichment is what makes classification possible at all. (Measured single-shot with no tools or browsing, abstention explicitly permitted; a browsing-enabled agent is a different configuration, and the methodology page carries the full disclosures.)
Evidence and economics
A classification you can file on needs receipts: which rule matched, what the decoded transfers show, and a replay you can run yourself. Our published reference examples are re-verified against the live engine nightly, and every API response carries its evidence. A chat answer carries a paragraph.
Here is what that means in practice for a firm. At API list prices, a single flagship-model read of an already-prepared transaction costs about a cent* — and what comes back is a paragraph you still have to verify yourself. For roughly the same cent, CryptoTaxEdge returns a finished classification: the category, the US tax treatment, a confidence score, the on-chain evidence behind it, and an honest review flag on the calls that belong with you — ready to drop into a workpaper. Across a season of client wallets, that is the whole difference.
*Flagship API list-price tokens per enriched row: ~$0.0104, measured July 2026. CryptoTaxEdge Pro: $249/month for 25,000 billable classifications — about $0.010 each, evidence and review-routing included.
What we're not claiming
We tested the chatbots as any user gets them: one call at a time, one fixed prompt, no browsing or tools — not a custom-built agent, which could do better and which we did not test. We did not measure our own engine's run-to-run stability in this study, so we won't claim it here. And we are not claiming chatbots hallucinate crypto tax answers — under honest no-tools conditions we observed the opposite: they refuse. A browsing-enabled agent is a different configuration we haven't measured. The full methodology — including the numbers that didn't reach significance and the limits of the sample — is published, with confidence intervals, on the methodology page. If you want to check our work, that's the point: you can.
Deterministic guardrails, honest escalation, and evidence are the product. Raw model accuracy is the commodity.
If you have a client wallet full of unknown DeFi transactions, enter one hash in the Classification Explorer and see what a finished answer looks like. Developers can start on the free tier of the API.