{
  "license": "CC-BY-4.0",
  "licenseUrl": "https://creativecommons.org/licenses/by/4.0/",
  "attribution": "ChainChoice (https://chainchoice.io)",
  "url": "https://chainchoice.io/data/methodology/2026.09.11.json",
  "version": "2026.09.11",
  "status": "archived",
  "publishedAt": "2026-09-14",
  "title": "Confidence no longer calls a tied or one-move lead decisive, the agent API returns the published order, and the golden country briefs carry what the wizard sends",
  "supersededBy": "2026.09.12",
  "previous": "2026.09.10",
  "changelog": {
    "url": "https://chainchoice.io/methodology/changelog/archive#v-2026.09.11",
    "entry": {
      "version": "2026.09.11",
      "publishedAt": "2026-09-14",
      "title": "Confidence no longer calls a tied or one-move lead decisive, the agent API returns the published order, and the golden country briefs carry what the wizard sends",
      "summary": "Find My Best no longer calls a lead “decisive” or “strong” when the top two print the same score, or when the #1 is the published leader that the one-point robustness sweep found one move from losing first place; such leads are capped at “moderate”. /api/agent-query, /assistant and /api/v1/recommend now return ChainChoice’s published order instead of an agent ranking over a hand-typed catalogue, and outcome rates are withheld below a sample of 30. rankings.json now states the score transform the engine actually runs and computes each tie note from the two tied rows, and the golden fixtures’ country briefs were corrected to the signals the wizard sends. No published order or score changes in any of the 119 categories.",
      "rationale": "Each part corrects something that stated more than the engine does: a confidence label over a tie or a fragile lead, an API pick the published ranking does not make, a formula text describing a removed branch, a tie note claiming the criteria did not separate rows whose criterion scores differ, and fixtures that froze a #1 no reader receives. Measured by replaying the golden suite against its committed fixtures: outside the country briefs, no order, winner, eligibility count or exclusion count moves, and the only field that changes is confidence. The country-brief changes come from the corrected fixture signals, not from an engine change.",
      "affectedCategories": [
        "bug_bounties",
        "carbon_credits",
        "cross_chain_messaging",
        "flash_loans",
        "indexers",
        "institutional_custody",
        "layer1_chains",
        "perp_house_vaults",
        "prediction_markets",
        "shared_sequencers",
        "simple_buy",
        "smart_accounts",
        "stablecoin_settlement",
        "stablecoin_yield",
        "tax_software",
        "token_launch_platforms",
        "tokenised_commodities"
      ],
      "changes": [
        {
          "type": "changed",
          "description": "Find My Best confidence tier (W1-05): a lead is capped at “moderate” when the top two print the same score or when the #1 is the published leader that the sweep (rankings.json leaderSurvivesOnePointChange) found one move from losing first place. No order, score or eligibility changes. The replayed golden answer cases change confidence in 59 cases across the 17 categories listed: 44 strong → moderate and 15 decisive → moderate. The results page’s “How close was this call?” label is now read from the recomputed sweep instead of a linear estimate, and on personalised runs it says the sweep was not recomputed for the reader’s answers."
        },
        {
          "type": "fixed",
          "description": "Golden country briefs (W1-15), a fixture correction with no engine change: the DE, US and IN briefs now carry the ISO code, country name and questionnaire region the wizard sends when a reader picks a country; before, they carried the ISO code alone. Because availability scoring reads region and country name, 322 of the 342 country fixtures had frozen a different ranked list from the one readers receive (245 differ only in scores, 77 in order, 29 of those in the #1) (for example prediction_markets US: Polymarket, not Kalshi; business_banking US: Mercury, not Meow). The corrected exchange country=IN brief puts Upbit at #1 under the questionnaire region “asia”; the fixture now matches what readers receive, but the availability data behind that result has not been re-checked."
        },
        {
          "type": "changed",
          "description": "Agent API (W1-16): the pick is the #1 of /data/rankings.json for the category the question maps to. A stated country (the `country` field, or a named country) removes only the rows the engine excludes for that country and never reorders the rest. The retired agent ranking used typed card fees, spreads and APRs, twelve typed 0–10 security scores and a “most secure” objective, and returned Binance as #1 for Germany, where the engine excludes Binance. Responses now carry publishedRank, publishedScore, category and country and state no fee, spread or security score. A question with no published ranking (for example yield on XRP) returns no pick. No published or wizard order on chainchoice.io changes."
        },
        {
          "type": "changed",
          "description": "Agent API contract (W1-16): provider ids are now the engine’s ids (for example bybit_exchange, okx_exchange) instead of the retired catalogue ids (bybit, okx). The dated yield overlay is looked up by those ids, so a rate stored under a retired catalogue id is not found and no rate is stated for that row. Outcome rates (proceed rates at /api/agent-recommendations?stats=1, accuracy and archetype-cohort retention at /api/outcomes) are null below n = 30 and carry sampleSize and windowDays. API fixture diff: exchange binance → bybit_exchange; onramp stripe-crypto → transak; crypto_card gnosis-pay → etherfi_cash; exchange for DE binance → bybit_exchange; store trezor and tax koinly unchanged, now with publishedRank 1; earn XRP nexo → no pick."
        },
        {
          "type": "fixed",
          "description": "rankings.json formula (W1-11), no order or score change: formula.step2_absoluteScore now states the continuous transform the engine has run since af882424; the old text still described the removed `<= 20 ? round(40 + weightedTotal)` branch, which no published row reached (lowest weightedTotal 24). The file now also publishes engineMethodologyVersion and a per-category specVersion alongside methodologyVersion."
        },
        {
          "type": "fixed",
          "description": "rankings.json tie notes (W1-12), no order or score change: each tie note is computed from the two rows. The old note said for every tie that the published criteria did not separate them, and named pricing and evidence depth as what decided the order; the criterion vectors differ in 18 of the 20 ties, and the evidence-depth factor no longer exists. Each tie block names its kind, both unrounded weighted criterion averages and the row the criteria alone prefer, and formula.tieBreakChain publishes the engine’s tie-break keys. tieBreakDecisions.againstCriteria lists the adjacent pairs the chain orders against the criteria: 62 across the catalog, 5 of them at #1/#2 (wallet, stablecoin_issuance, options_vaults, flash_loans, tokenised_commodities). Reordering them is methodology v2, not part of this version."
        },
        {
          "type": "changed",
          "description": "Golden fixtures re-emitted for this version: against the fixtures committed with 2026.09.10, the 1,875 answer cases differ only in confidence (the 59 above) and in contentHash, which changes in all 2,217 cases because the methodology version is part of the receipt hash. The 342 country briefs differ as described under W1-15."
        }
      ],
      "approvedBy": "mathias-siemonsmeier"
    }
  },
  "rules": {
    "source": {
      "src": "git:9f034d85af8850cd2a89084964120a2d548453ff",
      "at": "2026-09-14T03:30:58+02:00",
      "note": "The category specs as committed at the last commit before the next version was recorded."
    },
    "introduced": {
      "commit": "9aaa7d45df7bc4269953982b620b8fa0f0fd18f8",
      "at": "2026-09-14T03:23:17+02:00"
    },
    "specCommitsAfterIntroduction": 0,
    "categories": {
      "account_abstraction_infra": {
        "specVersion": "2026.08",
        "sha256": "6eda95185b718a1d682ca8c6b2d94c81efb26333d578086f77cc96ee467a904a",
        "url": "https://chainchoice.io/data/methodology/category/account_abstraction_infra.6eda95185b718a1d.json"
      },
      "appchains_l3s": {
        "specVersion": "2026.08",
        "sha256": "de43de80e8d9aad460726938235e8c57e825f627b0dfa1918a77d9af7a685868",
        "url": "https://chainchoice.io/data/methodology/category/appchains_l3s.de43de80e8d9aad4.json"
      },
      "attestations": {
        "specVersion": "2026.08",
        "sha256": "9bc0867a39f01f1bbe49029ddf1977d6e8816664d70cf708177397f8ce047f69",
        "url": "https://chainchoice.io/data/methodology/category/attestations.9bc0867a39f01f1b.json"
      },
      "automation_keepers": {
        "specVersion": "2026.08",
        "sha256": "6425ec6c7d90b65ae3fed196dfc0c61b7ac79fadae4f2acbeddef29a25af84ad",
        "url": "https://chainchoice.io/data/methodology/category/automation_keepers.6425ec6c7d90b65a.json"
      },
      "bill_pay": {
        "specVersion": "2026.08",
        "sha256": "fe36fb83aaea404403f628279507d4ea025187adc269229f296ac242a6d8a09b",
        "url": "https://chainchoice.io/data/methodology/category/bill_pay.fe36fb83aaea4044.json"
      },
      "block_explorers": {
        "specVersion": "2026.08",
        "sha256": "946b16f6a04fceb09740b18f187be41131638e94a1fd364a2fdd85683c18d0d9",
        "url": "https://chainchoice.io/data/methodology/category/block_explorers.946b16f6a04fceb0.json"
      },
      "bridges": {
        "specVersion": "2026.04",
        "sha256": "22e080dca6625a8c7551f885dce07b41639e541a3180cb41f90292b7e7eacae4",
        "url": "https://chainchoice.io/data/methodology/category/bridges.22e080dca6625a8c.json"
      },
      "bug_bounties": {
        "specVersion": "2026.08",
        "sha256": "1a9abe536df0e54f614310957001624262649ad1d60f339d039ee5e7ca02ea5f",
        "url": "https://chainchoice.io/data/methodology/category/bug_bounties.1a9abe536df0e54f.json"
      },
      "business_banking": {
        "specVersion": "2026.08",
        "sha256": "33099f30102e7dbb4f2797fabe0ecdd76393429d80c8923fdef1bcb491d81fd1",
        "url": "https://chainchoice.io/data/methodology/category/business_banking.33099f30102e7dbb.json"
      },
      "carbon_credits": {
        "specVersion": "2026.08",
        "sha256": "b09a0a461b6e5758194c04433c7e17b7a640221b30a06126f5ad3008c3beda47",
        "url": "https://chainchoice.io/data/methodology/category/carbon_credits.b09a0a461b6e5758.json"
      },
      "cdp_stablecoins": {
        "specVersion": "2026.08",
        "sha256": "c36938655a6b24c4c9d7fbd3654c0c6d40ea40bee2535a7a79fa1af3f54adf9c",
        "url": "https://chainchoice.io/data/methodology/category/cdp_stablecoins.c36938655a6b24c4.json"
      },
      "creator_mint_platforms": {
        "specVersion": "2026.08",
        "sha256": "9ec0a1a1844eaa04ea8e5cafa917b9b459f37c381b0cc97fa24f20b0c114c628",
        "url": "https://chainchoice.io/data/methodology/category/creator_mint_platforms.9ec0a1a1844eaa04.json"
      },
      "cross_chain_messaging": {
        "specVersion": "2026.08",
        "sha256": "0b7babb4d310e69d03363321d338ce77270e5445afe8a15fbe6277251da89d10",
        "url": "https://chainchoice.io/data/methodology/category/cross_chain_messaging.0b7babb4d310e69d.json"
      },
      "cross_chain_swaps": {
        "specVersion": "2026.08",
        "sha256": "0522f80d327e9dd4031c5053311ba04c8968f7669e5f4f17a86597839947ebee",
        "url": "https://chainchoice.io/data/methodology/category/cross_chain_swaps.0522f80d327e9dd4.json"
      },
      "crypto_backed_loans": {
        "specVersion": "2026.08",
        "sha256": "9376c6b5bf4a4c817313994b1a70f614612698b5ca3619431f631ba3c7a773f2",
        "url": "https://chainchoice.io/data/methodology/category/crypto_backed_loans.9376c6b5bf4a4c81.json"
      },
      "crypto_card": {
        "specVersion": "2026.08",
        "sha256": "1eeb72b3817235a5fa7c782c310738cbeec17e0577ae159a15f41b05f4732a2a",
        "url": "https://chainchoice.io/data/methodology/category/crypto_card.1eeb72b3817235a5.json"
      },
      "crypto_neobanks": {
        "specVersion": "2026.08",
        "sha256": "09de13cba4c3cd8125fef61f6d949d76d6b2042cebb62a2d82e3fb7e8765067e",
        "url": "https://chainchoice.io/data/methodology/category/crypto_neobanks.09de13cba4c3cd81.json"
      },
      "crypto_payroll": {
        "specVersion": "2026.08",
        "sha256": "986fa330cc5e9ad2eb258cbbc1f130a56493608a5cab35e19ebca24dada4915d",
        "url": "https://chainchoice.io/data/methodology/category/crypto_payroll.986fa330cc5e9ad2.json"
      },
      "data_availability": {
        "specVersion": "2026.08",
        "sha256": "d00794349a619d055f663b2cdf96fe772c1065a82be38a0327cc1acf4841134a",
        "url": "https://chainchoice.io/data/methodology/category/data_availability.d00794349a619d05.json"
      },
      "decentralised_compute": {
        "specVersion": "2026.08",
        "sha256": "9ffb1adce89bb05fcbf488150a28e041fc2a51d91d3ccec817a9456c2cbbc148",
        "url": "https://chainchoice.io/data/methodology/category/decentralised_compute.9ffb1adce89bb05f.json"
      },
      "decentralised_id": {
        "specVersion": "2026.08",
        "sha256": "16fb84e811443890bd89a6f575388deb256cca4097f30bab3394e6c8da0884bc",
        "url": "https://chainchoice.io/data/methodology/category/decentralised_id.16fb84e811443890.json"
      },
      "decentralised_storage": {
        "specVersion": "2026.08",
        "sha256": "4ff33dc5b045959d6035364d63b2aa8daf05bf7ab32dc17da83b6e8e89b45a27",
        "url": "https://chainchoice.io/data/methodology/category/decentralised_storage.4ff33dc5b045959d.json"
      },
      "defi_dashboards": {
        "specVersion": "2026.08",
        "sha256": "5da840a2fd3354ad884bec9f60d84cd2581839b23eb9fd5b30c03561df1f020f",
        "url": "https://chainchoice.io/data/methodology/category/defi_dashboards.5da840a2fd3354ad.json"
      },
      "defi_insurance": {
        "specVersion": "2026.08",
        "sha256": "6d5c771fe55af9adb1b91dc073cf7f7bec44b6e250278fe344bb73b686895d22",
        "url": "https://chainchoice.io/data/methodology/category/defi_insurance.6d5c771fe55af9ad.json"
      },
      "depin_networks": {
        "specVersion": "2026.08",
        "sha256": "2c2f15b30828052ebe9ae3bcf08625677a32ab61b906dec0bc603da2ec8e231b",
        "url": "https://chainchoice.io/data/methodology/category/depin_networks.2c2f15b30828052e.json"
      },
      "dev_frameworks": {
        "specVersion": "2026.08",
        "sha256": "fc19e46512ccfbbc4a95fa1de6753f096d8840129d965e1fb59be627ce9be5b4",
        "url": "https://chainchoice.io/data/methodology/category/dev_frameworks.fc19e46512ccfbbc.json"
      },
      "dex": {
        "specVersion": "2026.07",
        "sha256": "309020c8067e06767bbc2be68ce2caea64e5ab80f4e3a0b178d626b710114f34",
        "url": "https://chainchoice.io/data/methodology/category/dex.309020c8067e0676.json"
      },
      "dex_aggregator": {
        "specVersion": "2026.07",
        "sha256": "1c6ed2254c4c1ef35b6f016ccd23d56abbb8e2764cd1cc334462f58514eed53a",
        "url": "https://chainchoice.io/data/methodology/category/dex_aggregator.1c6ed2254c4c1ef3.json"
      },
      "enterprise_accounting": {
        "specVersion": "2026.08",
        "sha256": "efb862fa840f11090d2a22988798f1f754903948431a0a818ea33496e0ff80db",
        "url": "https://chainchoice.io/data/methodology/category/enterprise_accounting.efb862fa840f1109.json"
      },
      "exchange": {
        "specVersion": "2026.08",
        "sha256": "f3e84d3382e9009b7e7e055f548a01c92fe98c8236859925f06c0c91623b7aa7",
        "url": "https://chainchoice.io/data/methodology/category/exchange.f3e84d3382e9009b.json"
      },
      "fixed_rate_yield": {
        "specVersion": "2026.08",
        "sha256": "d3052d24cb72ff01199f39e094438b72e2fcca368e9b5534ac029824b456691c",
        "url": "https://chainchoice.io/data/methodology/category/fixed_rate_yield.d3052d24cb72ff01.json"
      },
      "flash_loans": {
        "specVersion": "2026.08",
        "sha256": "0da8a8db13cd8b0cd5116af314ad900104bee2b8956feec6f8163fdaf818b7d6",
        "url": "https://chainchoice.io/data/methodology/category/flash_loans.0da8a8db13cd8b0c.json"
      },
      "gift_cards": {
        "specVersion": "2026.08",
        "sha256": "212bb4e8ba6731e2d0f5cfd2d717f1e9aff89ec6a129d61095d60decdff0bee4",
        "url": "https://chainchoice.io/data/methodology/category/gift_cards.212bb4e8ba6731e2.json"
      },
      "governance_tools": {
        "specVersion": "2026.08",
        "sha256": "dc628165b32b3ccacdb47bbf814f86d84bb01693dcfff82c24dfe76bead5f05a",
        "url": "https://chainchoice.io/data/methodology/category/governance_tools.dc628165b32b3cca.json"
      },
      "hardware_wallet": {
        "specVersion": "2026.07",
        "sha256": "8954636303c18929c62be205173281e121e51a86ba4b0256e780df3222916c17",
        "url": "https://chainchoice.io/data/methodology/category/hardware_wallet.8954636303c18929.json"
      },
      "incentive_distribution": {
        "specVersion": "2026.08",
        "sha256": "f18274c77ded03695696b93a1b1df48c6af6e38270d6cf99fc4e0a0b77ab9bb6",
        "url": "https://chainchoice.io/data/methodology/category/incentive_distribution.f18274c77ded0369.json"
      },
      "indexers": {
        "specVersion": "2026.08",
        "sha256": "cabb29a7b5dc1da34d06c67429f9585ebf83784fc1eb337d823f3d09811bd6e4",
        "url": "https://chainchoice.io/data/methodology/category/indexers.cabb29a7b5dc1da3.json"
      },
      "institutional_custody": {
        "specVersion": "2026.08",
        "sha256": "e58a91507ff759bedca58b36d9c575082dacdb55072aae25e947a21828a1d1e1",
        "url": "https://chainchoice.io/data/methodology/category/institutional_custody.e58a91507ff759be.json"
      },
      "institutional_execution": {
        "specVersion": "2026.08",
        "sha256": "cee202dee8e736c640791d4489d45a4a9091993c138effef3d6f16f96a734d55",
        "url": "https://chainchoice.io/data/methodology/category/institutional_execution.cee202dee8e736c6.json"
      },
      "intents": {
        "specVersion": "2026.08",
        "sha256": "5c2d29d8c36808e77384a31d8f4ac6d4e3e8355a98c049bbc3fdf49214084d0c",
        "url": "https://chainchoice.io/data/methodology/category/intents.5c2d29d8c36808e7.json"
      },
      "key_recovery": {
        "specVersion": "2026.08",
        "sha256": "f1d96e0763945904fcc89464f718a422b8432651a26f200cdeb56d4c1f73fb7a",
        "url": "https://chainchoice.io/data/methodology/category/key_recovery.f1d96e0763945904.json"
      },
      "kyc_compliance": {
        "specVersion": "2026.08",
        "sha256": "992b501ecaff42b3b2a70ec757914974bc25a478c8781a4e6434ea66eb1fb7f9",
        "url": "https://chainchoice.io/data/methodology/category/kyc_compliance.992b501ecaff42b3.json"
      },
      "l2_chains": {
        "specVersion": "2026.07",
        "sha256": "45f046675ba42dee443a3ff3f0230fd73e693645caf0d9a44490640d7e9d6744",
        "url": "https://chainchoice.io/data/methodology/category/l2_chains.45f046675ba42dee.json"
      },
      "launchpads": {
        "specVersion": "2026.08",
        "sha256": "38e80fac5d52b300ca9ef4693064be791543c23e8eb3dd1a573ea4f721b96d0d",
        "url": "https://chainchoice.io/data/methodology/category/launchpads.38e80fac5d52b300.json"
      },
      "layer1_chains": {
        "specVersion": "2026.08",
        "sha256": "95087308dbb9ab635a0cec45e90b795865a8ddcae46f3779c59bee41829c000a",
        "url": "https://chainchoice.io/data/methodology/category/layer1_chains.95087308dbb9ab63.json"
      },
      "lending_borrowing": {
        "specVersion": "2026.08",
        "sha256": "17a8bdc17ce4752c1d8c587fdf2ed750871a2dffad38d78b9689cdf74a15f408",
        "url": "https://chainchoice.io/data/methodology/category/lending_borrowing.17a8bdc17ce4752c.json"
      },
      "lightning_payment_infrastructure": {
        "specVersion": "2026.08",
        "sha256": "6da517b50d35fd55fe7c4e404bfab514b3c06a627ea9689406db13eb691ec7e8",
        "url": "https://chainchoice.io/data/methodology/category/lightning_payment_infrastructure.6da517b50d35fd55.json"
      },
      "lightning_wallets": {
        "specVersion": "2026.08",
        "sha256": "55fa6b8f1afdcd0e0dd43eefe74969ee386797a01d573668d4bd363aec645ad3",
        "url": "https://chainchoice.io/data/methodology/category/lightning_wallets.55fa6b8f1afdcd0e.json"
      },
      "liquid_lockers": {
        "specVersion": "2026.08",
        "sha256": "7d2a3d0ca93552ad117769838364fea63a49b1bcf79a8bea29cf057d751a0bc7",
        "url": "https://chainchoice.io/data/methodology/category/liquid_lockers.7d2a3d0ca93552ad.json"
      },
      "liquid_staking": {
        "specVersion": "2026.08",
        "sha256": "05ed27a309fe48ee08976558501c81c85eb18d912e661eed920a330e3c1a2aa5",
        "url": "https://chainchoice.io/data/methodology/category/liquid_staking.05ed27a309fe48ee.json"
      },
      "liquidity_management": {
        "specVersion": "2026.08",
        "sha256": "c1a5366d41d909aeb8252c6fe1da32eebfc36e8f897cd88c1968931627ebe1cf",
        "url": "https://chainchoice.io/data/methodology/category/liquidity_management.c1a5366d41d909ae.json"
      },
      "market_data_apis": {
        "specVersion": "2026.08",
        "sha256": "dcbb7c5626b55a6e3062c1accb6df79de80c210adc358f50679b60aae1769379",
        "url": "https://chainchoice.io/data/methodology/category/market_data_apis.dcbb7c5626b55a6e.json"
      },
      "mev_protection": {
        "specVersion": "2026.08",
        "sha256": "bd079958d56d1221bf87f8c67b8d30436c82e898dcd0423ab3eabb8c76f5c476",
        "url": "https://chainchoice.io/data/methodology/category/mev_protection.bd079958d56d1221.json"
      },
      "mining_pools": {
        "specVersion": "2026.08",
        "sha256": "3a96501af5b4e25b37236b5f2e9250e451ca31e32d5d8682aec87b3bb509ae20",
        "url": "https://chainchoice.io/data/methodology/category/mining_pools.3a96501af5b4e25b.json"
      },
      "money_market_funds": {
        "specVersion": "2026.08",
        "sha256": "248fc8ba62c050bc9bd23c7eb7806b491b4361b344fb262f0dc6aa9e24aeeb78",
        "url": "https://chainchoice.io/data/methodology/category/money_market_funds.248fc8ba62c050bc.json"
      },
      "mpc_wallets": {
        "specVersion": "2026.08",
        "sha256": "bbf8b96f2965fb5a0d172da9d3a2b8a934690a6e4c83bfbf31caa3c3aadb655a",
        "url": "https://chainchoice.io/data/methodology/category/mpc_wallets.bbf8b96f2965fb5a.json"
      },
      "naming_services": {
        "specVersion": "2026.08",
        "sha256": "d1e016a479b828fb43435f4003bb6374af9fb39c435d923a6b344c0e980fb1f0",
        "url": "https://chainchoice.io/data/methodology/category/naming_services.d1e016a479b828fb.json"
      },
      "nft_analytics": {
        "specVersion": "2026.08",
        "sha256": "b4b2221b5d4c847e08a9d0fde8b1b1fd0b0bdeb990998dcfd9f4812519fadd07",
        "url": "https://chainchoice.io/data/methodology/category/nft_analytics.b4b2221b5d4c847e.json"
      },
      "nft_lending": {
        "specVersion": "2026.08",
        "sha256": "3a8e876fd1560705d6971ae44b32ba337bb57ba7327c8a1bb004481f0a99f2e4",
        "url": "https://chainchoice.io/data/methodology/category/nft_lending.3a8e876fd1560705.json"
      },
      "nft_marketplace": {
        "specVersion": "2026.08",
        "sha256": "9de7e5e4204a7d2fe72af2bcb0f5fec86ee1da5d2ff310a2670888c3aed4d7e1",
        "url": "https://chainchoice.io/data/methodology/category/nft_marketplace.9de7e5e4204a7d2f.json"
      },
      "offramps": {
        "specVersion": "2026.08",
        "sha256": "60677c4df3276fdeefdb13af87a903a7edf8d4703e9a3b525ec0879892df4c51",
        "url": "https://chainchoice.io/data/methodology/category/offramps.60677c4df3276fde.json"
      },
      "onchain_analytics": {
        "specVersion": "2026.08",
        "sha256": "fd0075ef3cea1730b8d0867ac6a2cd78d5a07424a6b5e8e0d38d7c0b823f6b64",
        "url": "https://chainchoice.io/data/methodology/category/onchain_analytics.fd0075ef3cea1730.json"
      },
      "onchain_monitoring": {
        "specVersion": "2026.08",
        "sha256": "ccd27cddf387102be1af5576b14467ca238befec1a6764eb95b41f10cbd5f14c",
        "url": "https://chainchoice.io/data/methodology/category/onchain_monitoring.ccd27cddf387102b.json"
      },
      "onramp": {
        "specVersion": "2026.08",
        "sha256": "3e35b5dcc507c96f59448e3c20567e11d8601842b6ad86cd553d316e082e2bf8",
        "url": "https://chainchoice.io/data/methodology/category/onramp.3e35b5dcc507c96f.json"
      },
      "options_vaults": {
        "specVersion": "2026.08",
        "sha256": "a6edc251c246ccae2a5a42e4f12d7f1a4093f0032f5a41ca55fd5d0809a4db93",
        "url": "https://chainchoice.io/data/methodology/category/options_vaults.a6edc251c246ccae.json"
      },
      "oracles": {
        "specVersion": "2026.08",
        "sha256": "2f8e4600cdbf28f8d998c7045e794771f6e692146ae7dee63a14373f058bc341",
        "url": "https://chainchoice.io/data/methodology/category/oracles.2f8e4600cdbf28f8.json"
      },
      "otc_desks": {
        "specVersion": "2026.08",
        "sha256": "ea16920cd6476d866b5a3dfde89a9ec270b264d2e335169ce9ac5169750e8c0e",
        "url": "https://chainchoice.io/data/methodology/category/otc_desks.ea16920cd6476d86.json"
      },
      "p2p_exchanges": {
        "specVersion": "2026.08",
        "sha256": "e1e112edc24088987ca14b1e058b7d801e615a0acd96b9cdfbe9ade884e48d53",
        "url": "https://chainchoice.io/data/methodology/category/p2p_exchanges.e1e112edc2408898.json"
      },
      "paid_research_seats": {
        "specVersion": "2026.08",
        "sha256": "3732125d9029e2627b2c52cc23a6acd0c7403f5efe262ebe3c54740f5f3a41a7",
        "url": "https://chainchoice.io/data/methodology/category/paid_research_seats.3732125d9029e262.json"
      },
      "payment_gateway": {
        "specVersion": "2026.04",
        "sha256": "ad2c0a6adf4d3598adf613d29039ed91bdd0be0c6c9610b2c78020a139fde984",
        "url": "https://chainchoice.io/data/methodology/category/payment_gateway.ad2c0a6adf4d3598.json"
      },
      "perp_dex": {
        "specVersion": "2026.07",
        "sha256": "b1678982d2f4caa1ae53045a1094472881e2bc54590f200648a5711738b0bebc",
        "url": "https://chainchoice.io/data/methodology/category/perp_dex.b1678982d2f4caa1.json"
      },
      "perp_house_vaults": {
        "specVersion": "2026.08",
        "sha256": "283a35af567d539e9499515b7e146621c3be6ef1f452000e675de06b6f6b1343",
        "url": "https://chainchoice.io/data/methodology/category/perp_house_vaults.283a35af567d539e.json"
      },
      "portfolio_tracking": {
        "specVersion": "2026.08",
        "sha256": "722f9b6b27e238c999c74b70d916d4d7e1c8f0496cd85d69e744c1b03e2e0c09",
        "url": "https://chainchoice.io/data/methodology/category/portfolio_tracking.722f9b6b27e238c9.json"
      },
      "prediction_markets": {
        "specVersion": "2026.08",
        "sha256": "7ea3a0a02229cf4df692b7ee51a0d52b7103bdf341d2b7aa470f082e77a9bd46",
        "url": "https://chainchoice.io/data/methodology/category/prediction_markets.7ea3a0a02229cf4d.json"
      },
      "privacy_tools": {
        "specVersion": "2026.08",
        "sha256": "223742e39da199b487c07ab89d25d6f9d51ae11c8b2ac34d7326adaa33434602",
        "url": "https://chainchoice.io/data/methodology/category/privacy_tools.223742e39da199b4.json"
      },
      "private_credit": {
        "specVersion": "2026.08",
        "sha256": "e7f03ace73f0709c619a5e9a3908ef99b3c268000a8c911d6ad8f9516aef2531",
        "url": "https://chainchoice.io/data/methodology/category/private_credit.e7f03ace73f0709c.json"
      },
      "proof_of_personhood": {
        "specVersion": "2026.08",
        "sha256": "1583ed4fb33282f35c8339e2439864d58236ac9e3639b11c18cf4dabfd933b26",
        "url": "https://chainchoice.io/data/methodology/category/proof_of_personhood.1583ed4fb33282f3.json"
      },
      "relayers": {
        "specVersion": "2026.08",
        "sha256": "4aa815af9ac015fffd70718046c960df6a2b9c72fe385d6d0886699516aa4953",
        "url": "https://chainchoice.io/data/methodology/category/relayers.4aa815af9ac015ff.json"
      },
      "remittances": {
        "specVersion": "2026.08",
        "sha256": "abad116e45b814b7928b39d3ce755ac103686ab98864fa7912b4f5606c7b34f5",
        "url": "https://chainchoice.io/data/methodology/category/remittances.abad116e45b814b7.json"
      },
      "restaking": {
        "specVersion": "2026.08",
        "sha256": "fe906c0fa33b8365a7b7216a826698e0ca477b688c20399e6938f6cf017d49bf",
        "url": "https://chainchoice.io/data/methodology/category/restaking.fe906c0fa33b8365.json"
      },
      "revoke_tools": {
        "specVersion": "2026.08",
        "sha256": "772b7a5a35692ff432fdc09700e0708abe21c7aba4e383b6a59616c2fbd2de92",
        "url": "https://chainchoice.io/data/methodology/category/revoke_tools.772b7a5a35692ff4.json"
      },
      "rollup_as_a_service": {
        "specVersion": "2026.08",
        "sha256": "809f717d9b248eea46d199f7456e2a5e2ab04eba200be4e5b2d8cdffe4f15ca4",
        "url": "https://chainchoice.io/data/methodology/category/rollup_as_a_service.809f717d9b248eea.json"
      },
      "rpc_nodes": {
        "specVersion": "2026.08",
        "sha256": "526f7e579c05df0f3cc060bd8088e4da379b046087c94c43d142b43361afbb09",
        "url": "https://chainchoice.io/data/methodology/category/rpc_nodes.526f7e579c05df0f.json"
      },
      "screeners": {
        "specVersion": "2026.08",
        "sha256": "e576a8fb1975de88ac2f059840291e6d245daa0edf29533900bac1724ac62df0",
        "url": "https://chainchoice.io/data/methodology/category/screeners.e576a8fb1975de88.json"
      },
      "seed_backup": {
        "specVersion": "2026.08",
        "sha256": "0918413f7ccebfc4e2be39cdab1f1084e8603fc3ab711e18cf57ec1de0f7099a",
        "url": "https://chainchoice.io/data/methodology/category/seed_backup.0918413f7ccebfc4.json"
      },
      "sentiment_analytics": {
        "specVersion": "2026.08",
        "sha256": "f602615c517f310f05874d8be1cb21ee5f390c67a8b5145c0e57fd10eb65690b",
        "url": "https://chainchoice.io/data/methodology/category/sentiment_analytics.f602615c517f310f.json"
      },
      "shared_sequencers": {
        "specVersion": "2026.08",
        "sha256": "d522c602491969fa212ed97a909e791f658ce1cbecb808e77de62a932f175532",
        "url": "https://chainchoice.io/data/methodology/category/shared_sequencers.d522c602491969fa.json"
      },
      "sidechains": {
        "specVersion": "2026.08",
        "sha256": "e83baf49c0ae2584219ea258ef45a451f5cbf0b0a509ba89a555f0accdd4ee3a",
        "url": "https://chainchoice.io/data/methodology/category/sidechains.e83baf49c0ae2584.json"
      },
      "simple_buy": {
        "specVersion": "2026.08",
        "sha256": "87d3f5a0e7eaf8c7ee0f0769b6c0025140e153988e50b7f1ab60b1afa05aa500",
        "url": "https://chainchoice.io/data/methodology/category/simple_buy.87d3f5a0e7eaf8c7.json"
      },
      "smart_accounts": {
        "specVersion": "2026.08",
        "sha256": "72625d4a2d926e5f3dabeb762812e8bc080865329a70e6f76f7c41745967089a",
        "url": "https://chainchoice.io/data/methodology/category/smart_accounts.72625d4a2d926e5f.json"
      },
      "smart_contract_audits": {
        "specVersion": "2026.08",
        "sha256": "2083f1a40821f8949d423966910278cab518fb45791b54b891b1f6815d5b77ac",
        "url": "https://chainchoice.io/data/methodology/category/smart_contract_audits.2083f1a40821f894.json"
      },
      "socialfi": {
        "specVersion": "2026.08",
        "sha256": "d586a4dbbc98079c9ef6a8288554b410f7f92313f8637490ad978f49c85699f5",
        "url": "https://chainchoice.io/data/methodology/category/socialfi.d586a4dbbc98079c.json"
      },
      "stablecoin_issuance": {
        "specVersion": "2026.08",
        "sha256": "e1690df5b1b728676bbd4ba0d305be81ab15d83143fd58783c098e58d09304f0",
        "url": "https://chainchoice.io/data/methodology/category/stablecoin_issuance.e1690df5b1b72867.json"
      },
      "stablecoin_settlement": {
        "specVersion": "2026.08",
        "sha256": "2c9e7fc52fe9e7a8005e66f4b70346b143a8e636847c9fa8388a28b1d038d68b",
        "url": "https://chainchoice.io/data/methodology/category/stablecoin_settlement.2c9e7fc52fe9e7a8.json"
      },
      "stablecoin_yield": {
        "specVersion": "2026.08",
        "sha256": "1a16e861f3a754a703f47fb774a93327cc08eff0f3052c7a02502001ed7824b7",
        "url": "https://chainchoice.io/data/methodology/category/stablecoin_yield.1a16e861f3a754a7.json"
      },
      "stablecoins": {
        "specVersion": "2026.08",
        "sha256": "dd1fa4b50485f0d2524a01f61da473bb97027e2cd1b6f63ca01fa859cb4aff75",
        "url": "https://chainchoice.io/data/methodology/category/stablecoins.dd1fa4b50485f0d2.json"
      },
      "staking": {
        "specVersion": "2026.08",
        "sha256": "7fff108b8da2f05f0f376b5e7c23f7e09aad2c3fac744a22c51af355e1e3192c",
        "url": "https://chainchoice.io/data/methodology/category/staking.7fff108b8da2f05f.json"
      },
      "structured_products": {
        "specVersion": "2026.08",
        "sha256": "9b05765a4139171d2fe5b283e7a97a0cc65191badb673b8c93d7ef1cd35f99bd",
        "url": "https://chainchoice.io/data/methodology/category/structured_products.9b05765a4139171d.json"
      },
      "subscriptions": {
        "specVersion": "2026.08",
        "sha256": "b314b3fdc0cc6033429dda2ec3abb5137ece58094e3a84276b1cea3bbb6e8b83",
        "url": "https://chainchoice.io/data/methodology/category/subscriptions.b314b3fdc0cc6033.json"
      },
      "tax_software": {
        "specVersion": "2026.08",
        "sha256": "f6b25eb8b0cf453c0219977bb37a5556b39664b2c496dea2ace71a81767435cd",
        "url": "https://chainchoice.io/data/methodology/category/tax_software.f6b25eb8b0cf453c.json"
      },
      "token_launch_platforms": {
        "specVersion": "2026.08",
        "sha256": "475bf4b1d60d701dbe1818778842a211a95c2dfe51a6a939c395e5049e6a387e",
        "url": "https://chainchoice.io/data/methodology/category/token_launch_platforms.475bf4b1d60d701d.json"
      },
      "token_standards": {
        "specVersion": "2026.08",
        "sha256": "c656afc947660782e05ed69fbdd5c6d997be01445ade914724c3968a91aa217b",
        "url": "https://chainchoice.io/data/methodology/category/token_standards.c656afc947660782.json"
      },
      "tokenisation_platforms": {
        "specVersion": "2026.08",
        "sha256": "2d08625c03372a57924a4188221c9cee49f087e391258f774b6b8bdd9c262b6a",
        "url": "https://chainchoice.io/data/methodology/category/tokenisation_platforms.2d08625c03372a57.json"
      },
      "tokenised_bonds": {
        "specVersion": "2026.08",
        "sha256": "a75909802498788cf0df714c8faaea1af2f29a1f3442f46c829617026dd84ddb",
        "url": "https://chainchoice.io/data/methodology/category/tokenised_bonds.a75909802498788c.json"
      },
      "tokenised_commodities": {
        "specVersion": "2026.08",
        "sha256": "f776a1a62adf5fb7a2e53691dc35843ccbf508a91f39a2ca92e04c5a5c643adc",
        "url": "https://chainchoice.io/data/methodology/category/tokenised_commodities.f776a1a62adf5fb7.json"
      },
      "tokenised_equities": {
        "specVersion": "2026.08",
        "sha256": "e59f17c3c6050adb75c8d7e11fe2b5cc1f44fb1615aae9010e4c3bd081523f5e",
        "url": "https://chainchoice.io/data/methodology/category/tokenised_equities.e59f17c3c6050adb.json"
      },
      "tokenised_funds": {
        "specVersion": "2026.08",
        "sha256": "01b94d0ec45262f126413ac7071c5fa1fd165107b03c6b4dd446980d76989020",
        "url": "https://chainchoice.io/data/methodology/category/tokenised_funds.01b94d0ec45262f1.json"
      },
      "tokenised_realestate": {
        "specVersion": "2026.08",
        "sha256": "33057991a2d382b20b0a3a02787bc73aac6071a2c601f4b0719ed37ae8d4ac30",
        "url": "https://chainchoice.io/data/methodology/category/tokenised_realestate.33057991a2d382b2.json"
      },
      "tokenised_tbills": {
        "specVersion": "2026.08",
        "sha256": "ce70bd7ada66a305bd3909b6de8f082490c81c348b55a3b3c9d9f8729f5281e3",
        "url": "https://chainchoice.io/data/methodology/category/tokenised_tbills.ce70bd7ada66a305.json"
      },
      "trading_bots": {
        "specVersion": "2026.08",
        "sha256": "796dc798321fd46c431d99471d1047be434a4208ec5f816d7daa510caf44ffa6",
        "url": "https://chainchoice.io/data/methodology/category/trading_bots.796dc798321fd46c.json"
      },
      "trading_tools": {
        "specVersion": "2026.08",
        "sha256": "90723c470dd26c29570a806202e73a2ef032602338d942c98501a4c514442fe7",
        "url": "https://chainchoice.io/data/methodology/category/trading_tools.90723c470dd26c29.json"
      },
      "transaction_simulation": {
        "specVersion": "2026.08",
        "sha256": "0c64054486715df93806e8101be41d4cfa4397631671d8140036ec2875407466",
        "url": "https://chainchoice.io/data/methodology/category/transaction_simulation.0c64054486715df9.json"
      },
      "travel_rule_compliance": {
        "specVersion": "2026.08",
        "sha256": "d7847a6c8b3fb39947868fd2c31978af216898427127a7e07ae3d9091d9d6ebb",
        "url": "https://chainchoice.io/data/methodology/category/travel_rule_compliance.d7847a6c8b3fb399.json"
      },
      "wallet": {
        "specVersion": "2026.08",
        "sha256": "5d3c3db6fb31e9883ad3fb699ac70c5aac22eae3df009e3253da17242606ae01",
        "url": "https://chainchoice.io/data/methodology/category/wallet.5d3c3db6fb31e988.json"
      },
      "wallet_screening": {
        "specVersion": "2026.08",
        "sha256": "5127ae5ba6779ffbf9e6cf9bcd5d85e0ecdb50210a415c161113597224554c01",
        "url": "https://chainchoice.io/data/methodology/category/wallet_screening.5127ae5ba6779ffb.json"
      },
      "web3_apps": {
        "specVersion": "2026.04",
        "sha256": "17c4b2ec1128628d7ac853b31206630e1e9e71d928342811fbc53e09418c53c7",
        "url": "https://chainchoice.io/data/methodology/category/web3_apps.17c4b2ec1128628d.json"
      },
      "wrapped_assets": {
        "specVersion": "2026.08",
        "sha256": "f3fad21723fd154b6c6762aa003c0e52809c8a3aa8c0678207ac33cd82549dd8",
        "url": "https://chainchoice.io/data/methodology/category/wrapped_assets.f3fad21723fd154b.json"
      },
      "yield_aggregators": {
        "specVersion": "2026.08",
        "sha256": "5f929dd0ebc40f84d17b6731550efcc10dbdae7cafd71ce0e8cd1abaea61d302",
        "url": "https://chainchoice.io/data/methodology/category/yield_aggregators.5f929dd0ebc40f84.json"
      },
      "yield_vaults": {
        "specVersion": "2026.08",
        "sha256": "14dc93f329c5af144155592d8ce86000140c5d7fea736e46b2345bae250a283a",
        "url": "https://chainchoice.io/data/methodology/category/yield_vaults.14dc93f329c5af14.json"
      }
    },
    "formula": {
      "step1_weightedTotal": "weightedTotal = (SUM over dimensions of (breakdown[d] / baseWeight[d]) * weight[d]) / (SUM of weight[d]) * 86",
      "step2_absoluteScore": "absolute = min(99, max(40, round(weightedTotal <= 20 ? 40 + weightedTotal * ((60 + (20 / 86) * 38 - 40) / 20) : 60 + (weightedTotal / 86) * 38)))",
      "step3_poolRelative": "score = round(min(min(99, max(41, leaderScore - (leaderWeighted - weightedTotal) * 2.6)), scoreOfRowAbove))",
      "tieBreakChain": [
        "weightedTotal, unrounded, higher first. Only rows whose weighted totals are exactly equal reach the keys below.",
        "tiebreakDelta, higher first: the sum of three factors. (1) Price: when the category has one comparable pricing basis that may decide rank (priced for at least two of its catalog rows, not an entry-plan figure derived from a price ladder, and quoted in a single currency), a priced row earns 0 to 2 points in proportion to where its price sits between the highest and the lowest in the pool, or 1 point when every published price on that basis is equal; a row with no price on that basis, and every row of a category without such a basis, earns 0. (2) Strength: 1 point when at least three of the row's catalog fitStrength values are 9 or above; those values are its published criterion scores, plus further strength keys on some rows. (3) Dimension: 1 point when the row scores at least 85% of the maximum on the highest-weighted dimension of the weights in use (the first in weights order when two are equal). A row outside the alternate product catalog (every payment_gateway row) carries 0. It orders rows and is never added to a score.",
        "objectiveFit points, higher first.",
        "product name, alphabetical."
      ],
      "tieBreakNote": "The published per-category tieBreakRules are not yet applied by the engine; where two rows share a weighted total, the chain above decides. It never compares the two rows' weighted criterion averages (it sees criterion scores only through the count of values at 9 or above in factor 2 and through whole dimension points), so it can place the row the criteria alone prefer second: each category lists those cases in tieBreakDecisions.againstCriteria.",
      "note": "boundBy names which limit decided the number when one did: floor, ceiling, row-above, or none. Rows marked floor sit at 41 and the multiplication alone gives a lower figure.",
      "baseWeights": {
        "availability": 20,
        "objectiveFit": 30,
        "frictionFit": 10,
        "trustBonus": 8,
        "quantitative": 18
      },
      "unweightedDimensions": [
        "profileFit"
      ],
      "unweightedNote": "These dimensions are computed and published in every breakdown but carry no weight in the total. profileFit left the composite in methodology 2026.09.2: it was constant inside all 114 categories, so its 20 points moved every product in a pool identically and ordered nothing. Sum the breakdown against baseWeights and the unweighted terms are simply absent from the arithmetic — that is the intended reading, not an omission.",
      "weightVersusInfluence": "A base weight is how much a dimension COULD move a score, not how much it did. Each category publishes dimensionSpread: the range that dimension actually covered across its pool. A spread of 0 means the dimension was constant there and decided nothing, however large its weight.",
      "objectiveBasis": "Each product names where its objectiveFit points came from. \"criteria\": the block is the weighted sum of the published criterion cells, round(min(30, 0.75 × Σ weight × cell/10 × 32)), and a pairwise ledger can itemise it per criterion. \"whole\": the category scores the block from structural facts or capability flags rather than per-criterion cells, so it enters a ledger as one term. \"sunset\": the product no longer operates (sunsetAt gives the date) and the block is zeroed regardless of its cells.",
      "totalBaseWeight": 86,
      "spreadPerWeightedPoint": 2.6,
      "scoreFloor": 41,
      "scoreCeiling": 99,
      "leaderRobustnessNote": "leaderSurvivesOnePointChange: whether this category keeps its #1 when any single criterion score moves by one point on the 0-10 scale — the smallest difference two competent raters can hold. False in 39 of 118 categories. A false does not mean the ranking is wrong; it means the evidence separates the top two by less than the width of a judgement call, and the file says so rather than letting the displayed gap imply otherwise. null means the sweep could not run — too few criteria or too small a pool — and is deliberately not reported as robust."
    },
    "recipe": "sha256 is the SHA-256 of the category spec (the file's \"spec\" field) written as compact JSON: every object's keys sorted, no spaces or line breaks, non-ASCII characters as UTF-8 (not escaped), no trailing newline. That is the serialisation of the rankings digest."
  },
  "rankings": {
    "ledger": "https://chainchoice.io/data/rankings-ledger.jsonl",
    "produced": [
      {
        "seq": 2304,
        "rankingsDigest": "63b9997f231bdb1af5cc2129e1387107196ca5bd4200878ed936b7a7ee59bcfc",
        "ob": "2026-09-14",
        "src": "git:5f4c123f3b7ba768476ccbc3dae9a2c7b931036e",
        "engine": "2026.09.11"
      }
    ],
    "whenIntroduced": "78031e54249d1bb0aa74c863e022a0f3af368d32010257561369fac91e661ca4",
    "whenSuperseded": "63b9997f231bdb1af5cc2129e1387107196ca5bd4200878ed936b7a7ee59bcfc",
    "newest": null,
    "note": "produced lists the ledger's digest entries whose rankings.json was generated while this version was the newest changelog entry (seq is the entry's place in the ledger). whenIntroduced and whenSuperseded are the digests of the rankings.json committed with the first and the last commit of this version."
  },
  "gaps": [],
  "notes": []
}
