Published verdictRanking snapshot 3 November 2026
Divly leads by 12 points
Divly scores 12 points above TokenTax, led by your tax form, cost-basis method, and complex transactions.
Why, term by termDivly leads on 3 of 4 published criteria; TokenTax on 0. The terms sum to the gap.
TermDivlyTokenTaxWeightPoints
Your tax form9/105/107.7+8.0for Divly+4.1 of 32
Cost-basis method7/106/106.2+1.6for Divly+0.8 of 32
Complex transactions7/106/105.3+1.4for Divly+0.7 of 32
Net of the terms+11.0
Criteria roundingThe criteria block is rounded to whole points before it is spread+0.2
Reproduced gap+11.2
Published gapAfter score rounding and bounds — see the note below7866+12.0
Weight is in points of the 86-point weighted total. Points are score points of the gap between the two.
DivlyScore 78The European filing specialist: one served table naming K4/SRU, Anlage SO, SA108, 2086, PIT-38 and Modelo D-100 across fourteen jurisdictions, a Skatteverket-native SRU upload, a per-disposal 'applied_rule_for_disposal' column proving s.104 same-day/30-day matching ran, and an in-app tax-year selector that defaults to 2025 as the CURRENT year - undercut by a EUR 39 headline that buys only 100 transactions, a delivered ledger that never states the acquisition date of the lot it matched, no closing-position output in any jurisdiction, and a 2021 Terms document that never mentions the 'lifetime access ... forever' its help centre promises.Strength: Named form output — 9/10Watch-out: Four one-way doors, none of them on the page you buy from, and two of them invisible without reading Divly's own shipped code. (1) THE PRICE YOU SEE IS THE 100-TRANSACTION PRICE - CONFIRMED AT THE SOURCE. https://divly.com/en/pricing advertises Essential at '39' 'EUR', but that is the first cell of a four-column ladder wired into the page's own inline script. From the served source on 2026-08-19: 'const pricingMatrix = { 0: [0, 39, 99, 599], 1: [0, 99, 199, 699], 2: [0, 199, 399, 799], 3: [0, 399, 699, 999] };'. The mapping is not inferred - the bracket buttons carry it: '<button class="transaction-btn active" data-index="0" onclick="updatePricing(0)">Up to 100</button>', then data-index 1 'Up to 1,000', 2 'Up to 10,000', 3 'Up to 100,000'; the script ends with 'updatePricing(0);' and the server-rendered spans read '<span id="price-essential">39</span>'. EUR 39 buys 'Up to 100' transactions for the year. At 'Up to 1,000' Essential is EUR 99; at 'Up to 10,000' EUR 199; at 'Up to 100,000' EUR 399 - and Full Service starts at EUR 599, not the EUR 499 this repo's catalog row records. Anyone with a routine DCA habit is in the 1,000+ bracket and pays 2.5x the headline. (2) ONCE YOU DOWNLOAD, YOU CANNOT UNBUY, AND THE TERMS AND THE HELP CENTRE DISAGREE. Terms: 'It is not possible to get a refund if you have downloaded a file from the tax report section in the platform.' - flat, unqualified. https://help.divly.com/en/articles/8233489-can-i-request-a-refund ('February 3, 2026') sets three requirements - 'You make the request within 14 days of purchasing the service.' / 'The reason for refund is related to a bug or issue that Divly is unable to resolve within a reasonable time frame.' / 'You have not downloaded any tax reports.' - and then adds a fourth: 'This does not apply if the issue is related to the tax report.' So the help centre carves out the commonest case while the binding contract does not; the Terms govern, and the disagreement is the finding. Either way, dissatisfaction that is not a Divly bug is not a refund reason. Worse, the Terms purport to cancel the EU statutory withdrawal right within the same clause that grants it, under the heading 'Your right to terminate the Agreement pre-maturely': 'If you are a consumer, you have the right to withdraw from this Agreement without giving any reason within 14 days.' ... and, four sentences later, 'Since this is a Service we will not, if you withdraw from this Agreement, refund any payments we received from you.' (3) THE PRICING PAGE IS NOT THE WHOLE PRICE LIST - three charges exist that it never shows, all read from Divly's own app bundle (plugin_v23.js, downloaded 2026-08-19). A per-hour overage on the top tier, stated in the help centre: Full Service 'includes 4 hours of work by the Divly Expert. In most cases this is enough, however if extra hours are required they will be charged at 150 EUR per hour.' A priority-service add-on with a four-figure fallback: 'get_priority_service_price:function(){return this.pricing_info&&this.pricing_info.priority_service_price?this.pricing_info.priority_service_price:1e3}'. And an early-bird tier system fetched at checkout: 'fetch_early_bird_tiers:async function(){try{const e=await(await fetch(Fe+"/client/get_early_bird_tiers")).json();'. (4) A TIER THE PRICING PAGE SELLS IS HARDCODED AS UNBUYABLE. The same bundle contains 'is_sold_out_tier_value:function(t){return typeof t!="string"?!1:t.replace("-EARLY","").toUpperCase().startsWith("SECOND_100000")}' and, in the checkout handler, 'if(t.some(e=>this.is_sold_out_tier_value(e.tier))){alert("Sold out tier cannot be purchased.");return}'. In the same file 'THIRD_' resolves to 'Full Service', so 'SECOND_' is the second paid tier, Peace of Mind - the one https://divly.com/en/pricing still advertises at EUR 699 for the 'Up to 100,000' bracket. Whether the server also refuses the sale is unestablished; what is established is that Divly's own client blocks it. (5) THE 'lifetime access ... forever' PROMISE YOU ARE RELYING ON lives in a help article, not the contract; the contract is stamped 'Updated by Synch: 22 September 2021', never mentions it, and reserves account deletion. (6) IF YOU ARE GERMAN, THE STALE PAGE IS THE MARKETING ONE, NOT THE PRODUCT. https://divly.com/en/guides/crypto-taxes-in-germany ('Jan. 15, 2026') still says 'You have a €600 exemption limit on crypto profits.' while the help article ('July 7, 2026') says 'If you exceed the €1000 exemption limit (€600 for tax years 2023 and earlier), the full amount of gains is taxable.' The app itself renders the correct figure - the German tax widget in plugin_v23.js computes the exemption as 'C(a.year>=2024?1e3:600)'. So the number you FILE is right; the number you'd PLAN with off the guide is two years stale.TokenTaxScore 66A US Form 8949 factory with a genuine per-account (2025) basis engine and a real TurboTax handoff, wrapped around an accounting firm — but outside the US it emits an unnamed "relevant international report" the filer transcribes by hand, and the open-lot basis that report rests on cannot be exported. UPHELD verbatim: every clause of it was traced to a character-exact quote on a served page loaded 2026-08-19.Strength: Basis method fidelity — 6/10Watch-out: UPHELD, with one item added and one quote re-sourced. That the plan you bought does not produce the thing the marketing page sold, and that the real work costs more. (1) /features advertises "Form 8949, Schedule D" AND "International forms" under "Our software automatically generates every tax form you need to complete your filings—whether you file with us or a different provider, such as TurboTax.", but the help centre states "Includes information that TokenTax does not have access to for crypto-only clients. TokenTax is unable to generate this form unless we are handling your full tax return. Your tax preparer is responsible for your Schedule D." — and no page anywhere names a single international form. (2) Outside the US there is no form at all — every tier promises only an "IRS Form 8949 or relevant international report", and TokenTax's own Sweden guide tells the filer to "Log in to Skatteverket, open form K4 (D). List each disposal’s cost basis, proceeds, and result" by hand. (3) Buying the cheap tier and then importing your full history to establish basis silently burns your cap: "Import the complete historical data needed to establish accurate cost basis. Your plan's transaction allowance still applies; importing historical data does not make the plan's transaction limit unlimited." (4) Surcharges land after purchase and are published only inside the help centre, never on /pricing: "Margin Processing: This service is $399 and includes processing of margins, derivatives, and futures data.", "It is available for purchase for $49 for Basic Plan or Premium Plan holders." for FBAR, and full filing "starting at $999". (5) Even the $3,499 VIP plan is chain-limited — "At the moment, the VIP Plans include support for Layer 1 Ethereum, Polygon, and Binance Smart Chain transactions. Our engineers are continually adding support for new chains, but in the meantime, other chains may require additional fees." — and one-shot: "Additionally, we will only complete your reconciliation one time for each plan purchased. If we complete the services included in your account's plan but you later discover that you omitted some transaction data, we may ask you to purchase an additional plan." (6) None of it is refundable, and there is nothing to try first: "TokenTax does not offer refunds." (https://tokentax.co/terms), expanded in the help centre as "At TokenTax, we have a no refund policy." (https://help.tokentax.co/en/articles/1800908-can-i-get-a-refund, October 25, 2021) — while "At this time, we do not offer free trials, demos, or preview functions." (https://help.tokentax.co/en/articles/5803735-does-tokentax-offer-any-demos-or-trials, January 23, 2024). You buy blind and you cannot unwind it. (7) ADDED — three served pages disagree on who may buy the $999 full-filing add-on: the UI guide says "This service is only available for U.S.-based clients with a VIP Plan or above." and the VIP article says Full-Filing services "are available to purchase, as an add-on to our VIP Plan, or above, only.", but the plan-chooser, timestamped "Updated today", says "Full filing by TokenTax is a separate add-on available to customers who purchase any crypto tax plan; it is not included automatically and is not limited to VIP customers." and /pricing says only "This add-on is only available to customers who purchase a crypto tax plan." A Basic buyer reading the newest page believes a service two older pages gate behind $3,499 is available to them.