{"apy":4.9,"expectedAPY":0.049,"expectedAPYPct":"4.9%","organicAPY":0.049,"organicAPYPct":"4.9%","basis":"deployed","modeled":true,"isLive":true,"source":"live","regime":"neutral-funding","fundingRate":0.0714,"stakingYield":0.0217,"timestamp":"2026-08-16T20:57:32.170Z","updatedAt":"2026-08-16T20:57:32.170Z","methodology":"L/(L+1) at L=2.21 = 0.6889 × (Lido 7d SMA 2.17% + HL 60d funding 7.14%) × (1 − 15.20% strategy costs) × (1 − 10% insurance) × (1 − 0% Genesis fee). L is the venue leverage the engine targets at this funding rate, min(12, 1.5 + funding × 10); the multiplier is L/(L+1) because the short is sized one for one against spot and the margin earns nothing. The funding window is 60d, selected on 2026-08-06 by out-of-sample prediction error against realised forward funding, replacing the 180d mean which scored worst of every window tested on every asset. Note that every trailing window, this one included, has historically been biased HIGH against what was then realised.","framing":{"kind":"modeled-deployed-basis","headline":"The published APY is a live model of the DEPLOYED book: the engine sizes its short one for one against on-chain spot, so the carry is multiplied by L/(L+1), which is below one, never by L. It is a forward model, not a record of realized distributions. Realized yield is published separately in the realized block.","deployedBasis":"The deployed engine runs an unlevered hedge, sized one for one against the vault's exposed assets. Venue leverage reduces posted margin; it does not multiply the carry earned on the underlying. For capital C at venue leverage L the spot leg is C times L/(L+1) and the rest is margin earning nothing, so that ratio, not L, is what multiplies the carry. This endpoint publishes that number as the headline.","withdrawnModeledTarget":"Until 2026-07-28 this endpoint also published a modeled target at scale: the same haircut chain evaluated at a flat 3.0x, printing near 13 percent under its own label. It has been withdrawn and will not return. It was reachable only if the spot leg were itself levered to three times notional through a borrowing facility Kerne does not operate, the model charged no borrow cost against it, and no holder could ever have been paid it. It was the headline until 2026-07-24, a labelled target until 2026-07-28, and is now nothing. The deployed figure is the only forward rate Kerne publishes.","throughCycleBandPct":[8,9.4],"throughCycleBasis":"Kerne's published feasibility analysis puts the sustainable through-cycle rate for this design near 8 to 9.4 percent at current market funding. Read the basis before comparing anything to it: that band is computed on a LEVERED design basis, with the 9.4 end being this same formula evaluated at 2.0x. It is therefore not an arithmetic ceiling on the figure published here. The deployed headline sits under it by construction, because its multiplier is below one rather than above, so the distance is a different measurement and not an unmet target. The analysis, including the derivation of both bounds and a dated addendum on the deployed engine's unlevered basis, is published in full at https://kerne.fi/insights/through-cycle-yield-feasibility-band-8-to-9-4-percent.","measuredVenueBasis":"The headline derives its leverage from the engine's own funding rule, which is reproducible from public inputs. The ratio the hedge account is actually carrying is measured separately, from the signed hourly attestation, and published in the measuredVenue block. It is not the headline because at current book size it swings on rounding and over-margining rather than on the market, but it is published because it can read below the rule-based figure and we would rather state that than have it found.","realizedToDate":"Say the number rather than the adjective: the live skUSD vault has received exactly ONE yield distribution in its life, 0.1 kUSD on 2026-07-09, which the deployment registry records as a plumbing smoke test. Nothing has been distributed since, including after the Genesis escrow was funded on 2026-07-30. The share price has stood at 1.000098667771066974 throughout, so the realized figure in the block below is one test transfer annualized over a window clamped to the vault life, and it decays daily toward zero by construction rather than tracking anything. Read it as evidence that the strategist topology works, not as a rate. Verify with convertToAssets on the vault at two blocks; the same figure is published on kerne.fi/honesty-index."},"venueLeverage":{"modelRule":2.214,"modelWouldTransmit":2,"transmittedByEngine":true,"priorVenueDefault":20,"marginSizingAutomated":false,"venueConfigured":3,"reconciles":false,"note":"Until 2026-07-26 the engine computed this leverage and never sent it to the venue, so the hedge account ran at Hyperliquid's 20x default while this endpoint published 1.92x. The engine now transmits it before every order, live since 01:31 UTC on 2026-07-26, when the account moved from 20x to 3x with no trade, no capital moved and an unchanged liquidation price. Transmitting it does not raise yield: at the live book the venue required $0.74 of margin against $26.70 held, so the leverage setting was never the binding constraint. What the book earns carry on is short notional over notional plus equity, published in measuredVenue, and no code path yet sizes venue margin to the modelled split or recalls the excess. The margin gap is measured every cycle and moving the capital is a human decision, because at this book size the transfer costs more than the carry it would earn. Read modelWouldTransmit as what this rule implies at the funding figure THIS endpoint publishes, which is the Hyperliquid 60 day trailing mean. The engine picks its leverage from the instantaneous funding rate at the moment it runs, so the integer it sends can differ from this one without either being wrong. The authoritative value is the venue itself, published here as venueConfigured and read live, with reconciles saying plainly whether the two agree. Both are null rather than guessed when the venue cannot be read.","verify":"POST https://api.hyperliquid.xyz/info with {\"type\":\"clearinghouseState\",\"user\":\"0x09a2780ac8Be6D5d2d1F85A8D92b09D40C9CA37e\"} and read assetPositions[].position.leverage.value against transmitted, and positionValue against accountValue for the measured multiplier."},"measuredVenue":{"available":true,"shortNotionalEth":0.0079,"shortNotionalUsd":14.88,"equityUsd":26.67,"impliedLeverage":0.558,"impliedCarryMultiplier":0.3582,"netApyAtMeasuredRatio":0.0255,"asOf":"2026-08-16T19:49:32.000Z","source":"https://kerne.fi/api/por/signed","note":"The ratio the hedge account is actually carrying, measured from the signed hourly attestation rather than derived from the engine rule that sets the headline. It is reported and NOT used as the headline because at current book size it is dominated by operational noise: two consecutive hourly attestations on 2026-07-24 measured 0.354 and then 0.614, a 74 percent swing in an hour driven by rounding and by deliberate over-margining, not by the market. It is published because it can sit below the rule-based figure, and a number that low is one we would rather state than have someone else find."},"realized":{"available":true,"annualized":0,"windowDays":30,"windowClamped":false,"asOf":"2026-08-16T20:37:16.838Z","source":"https://kerne.fi/api/honesty-index","note":"Annualized growth of the on-chain skUSD share price over the full 30 day window. This is what has actually been paid; the figures above are forward models. UNITS: `annualized` is a FRACTION, the same scale as expectedAPY, so 0.001 is one tenth of one percent and not one tenth of one. It was published as a number of percent under the key `annualizedPct` until 2026-08-07, which made it the only Kerne rate in this response carried as a number of percent while every other one is a fraction, so it read one hundred times too high to anything applying the rule the payload uses everywhere else, and it read too high in our favour on the one endpoint that exists to show we underdeliver. Divide this by expectedAPY to get the share of the advertised rate actually delivered."},"incentive":{"active":false,"distributionLive":false,"distributionsFromEscrow":0,"lastVaultDistribution":{"date":"2026-07-09","amountKUSD":0.1,"txHash":"0x5deef3d6cd0628d72b6a62d9abb893220ce21a7e7c2f9e31f80676c3a5915575","note":"The only yield distribution the live skUSD vault has ever received, and the deployment registry records it as a plumbing smoke test proving the strategist topology works, not strategy carry. It predates this escrow by three weeks. Verify by reading convertToAssets on the vault: the share price has been 1.000098667771066974 since, which is 0.0099 percent of total growth."},"distributionNote":"This escrow has paid nothing, and no holder has ever received any part of it. It is real money at a real address and you can read the balance yourself. What is no longer true is that nothing could pay it out. Since 2026-08-03 the conversion exists as scripts/genesis_incentive_distribute.py, which takes escrow USDC through the PSM at the published fee, mints kUSD to the strategist buffer, and calls skUSD.distributeYield, which raises the share price for every holder pro rata over a 24 hour vest. That script has never been run. It is not a scheduled job and cannot become one: the two legs that move money out of the Safe need 2 of 3 signatures, which is the reason the Safe holds the escrow at all. It also refuses to run while the vault has no external holder, and today the vault is 100.0000 percent our own staking address, measured to the wei, so a distribution would pay us out of our own escrow and then publish the result as realized yield on the page that exists to catch exactly that. The refusal is a hard gate in the planner, re-checked on chain immediately before signing, and pinned by tests. So the accurate statement is narrower than the one this field carried between 2026-08-03 and today: the path exists, it is gated shut, and nothing has been paid. Separately, the carry cadence armed on 2026-07-26 and ticking every 1800 seconds accounts for harvested organic funding and never for this escrow, and the two ledgers are kept in different files on purpose, because summing a subsidy into strategy yield is the most misleading figure this protocol could publish about itself. The headline above stays organic carry alone, and wouldPayAPY states what the escrow would add if it were being distributed.","label":"Genesis incentive","baseAPY":0.049,"baseAPYPct":"4.9%","incentiveAPY":0,"incentiveAPYPct":"0%","wouldPayAPY":0.056,"wouldPayAPYPct":"5.6%","totalAPY":0.049,"totalAPYPct":"4.9%","fundedUSD":333.43,"escrowAddress":"0x52d3E450bA6c299B1B07298F1E87DD74732D4877","escrowToken":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","eligibleVault":"0x96F5102C15b839757f811A98CEc3725Ac21DfA14","eligibleTVL":1011.582169,"targetAPY":0.056,"targetTotalAPY":0.105,"capBinding":false,"sustainableAPY":4.013031,"taperBinding":false,"fullRateToTVL":72450.2,"fundedThrough":"2027-07-24","runwayDays":2148,"endsAt":"2027-07-24","minRunwayDays":30,"tvlCapUSD":0,"observedAtBlock":50062252,"rpcUsed":"https://mainnet.base.org","basis":"The headline above is organic deployed-basis carry ALONE. It does not include this escrow, and until 2026-08-01 it did, which was wrong. Every rate in this block below is conditional and none of it is being paid. Read wouldPayAPY, not incentiveAPY: the first is what this escrow would add if it were distributed at this book and this carry, the second is what it actually adds, and the second is zero. The sizing model is unchanged and still worth stating, because it is what would apply the day a payment path exists. The subsidy rate is set by a declared total: the program tops the headline up to targetTotalAPY, so when carry improves the subsidy shrinks by the same amount and the escrow lasts longer, and when carry falls the subsidy grows until it hits its cap at maxSubsidyAPY and the rate prints below the floor. The escrow then imposes a second and independent ceiling: wouldPayAPY is never higher than sustainableAPY, the most this escrow can hold for minRunwayDays against the staked balance in eligibleTVL. Deposits are absorbed by fundedThrough first, and the rate itself only starts to move once the staked balance passes fullRateToTVL, at which point it walks down continuously and taperBinding says so. The program also ends hard at endsAt regardless of escrow: runwayDays measures the escrow only and ignores that date, so fundedThrough, not runwayDays, is the field that states how long this rate would be available. What changed on 2026-08-01 is not the sizing but the claim. This block previously asserted that the subsidy reaches holders as a rising skUSD share price through distributeYield. That sentence described a mechanism that had never run, and at that date nothing could have run it: the escrow is USDC in a Safe, holders are paid in kUSD from the strategist buffer, and on 2026-08-01 no scheduled job, manual script or contract converted one into the other. That specific gap was closed in code on 2026-08-03 and the rail is described in distributionNote above, but the withdrawal stands, because a path that exists and has never run still pays nobody. The claim was refutable in one RPC call against the share price, which is the check this protocol asks other people to run, so it has been withdrawn rather than defended. tvlCapUSD stays 0 for the same reason it always was: a share price is pro rata over the whole vault by construction, so a cap could never be honoured in payment and would only make a published rate larger than the rate a depositor receives.","verify":"cast call 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 \"balanceOf(address)(uint256)\" 0x52d3E450bA6c299B1B07298F1E87DD74732D4877 --rpc-url https://mainnet.base.org --block 50062252 for the escrow, which is USDC at 6 decimals so divide the result by 1e6 to get fundedUSD, and cast call 0x96F5102C15b839757f811A98CEc3725Ac21DfA14 \"totalAssets()(uint256)\" --rpc-url https://mainnet.base.org --block 50062252 for the eligible book, which is denominated in the vault's underlying kUSD at 18 decimals so divide by 1e18 to get eligibleTVL. Note that decimals() on that vault returns 24, which is the SHARE decimal and the wrong divisor for totalAssets(); using it understates the book by a factor of a million. Both legs of this block were read at that block, at those addresses, in one batch. To check the claim that costs us the most, that this escrow has paid nothing, run cast call 0x96F5102C15b839757f811A98CEc3725Ac21DfA14 \"convertToAssets(uint256)(uint256)\" 1000000000000000000000000 --rpc-url https://mainnet.base.org and compare it against the same call at any block before the escrow was funded on 2026-07-30. It has not moved. The argument is 1e24 because that IS the share decimal, which is the one place on this endpoint where 24 is the right divisor."},"genesisCohort":{"active":false,"distributionLive":false,"label":"Genesis cohort","targetTotalAPY":0.1,"targetTotalAPYPct":"10%","baseAPY":0.049,"subsidyAPY":0.051,"deliveredTotalAPY":0.1,"capBinding":false,"fundedUSD":333.43,"escrowAddress":"0x52d3E450bA6c299B1B07298F1E87DD74732D4877","escrowToken":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","eligibleVault":"0x96F5102C15b839757f811A98CEc3725Ac21DfA14","capEligibleTVL":6538.25,"seatedUSD":1011.582169,"roomUSD":5526.67,"filled":false,"capEnforceable":false,"perAccountAccrual":false,"vestingPeriodSeconds":86400,"insiderAddress":"0x14f04cE02f35B29Af564A98544dD7e2393993946","insiderStakedUSD":1011.582169,"externalStakedUSD":0,"termCostUSD":333.43,"termDays":365,"endsAt":"2027-08-03","daysRemaining":351,"deliveredAtBook":[{"stakedUSD":6538.25,"deliveredTotalAPYPct":10},{"stakedUSD":25000,"deliveredTotalAPYPct":6.23},{"stakedUSD":100000,"deliveredTotalAPYPct":5.23},{"stakedUSD":1000000,"deliveredTotalAPYPct":4.93}],"observedAtBlock":50062252,"rpcUsed":"https://mainnet.base.org","basis":"This is a bounded OFFER, not the headline. The advertised rate on this endpoint stays organic deployed-basis carry alone, in expectedAPY, and nothing in this block reaches it. What this block says is narrower and checkable: the USDC escrowed at escrowAddress funds a total of targetTotalAPY for termDays while total staked assets stay at or below capEligibleTVL, and termCostUSD states the full bill for exactly that, which never exceeds fundedUSD. The cap is measured on TOTAL staked assets because that is the denominator a distribution is divided by, not on new deposits: seatedUSD is what is already inside it and roomUSD is what is left. Read the next two fields before quoting any of it. capEnforceable is false: the deployed skUSD returns 2 to the 256 minus 1 from maxDeposit for every address and implements no whitelist, cap or pause, so nothing on chain holds the book at the cap. perAccountAccrual is false: distributeYield credits one global figure divided by the whole share supply, so no depositor can be paid a different rate from any other. Together those mean the sentence \"the first N dollars keep this rate\" is FALSE here and is not being made. If the book grows past the cap the same escrow spreads pro rata over more assets and the delivered rate falls for everyone, earlier depositors included, which is why deliveredAtBook publishes what a holder actually receives at four book sizes rather than describing the cap as protection. And active is false: no distribution from this escrow has ever occurred, the rail is a script that has never run, and insiderStakedUSD against seatedUSD shows why it must not be run yet, because a payment into a book that is entirely the protocol own address would manufacture a realized figure out of a transfer to itself.","verify":"cast call 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 \"balanceOf(address)(uint256)\" 0x52d3E450bA6c299B1B07298F1E87DD74732D4877 --rpc-url https://mainnet.base.org --block 50062252 for fundedUSD, at 6 decimals so divide by 1e6. cast call 0x96F5102C15b839757f811A98CEc3725Ac21DfA14 \"totalAssets()(uint256)\" --rpc-url https://mainnet.base.org --block 50062252 for seatedUSD, at 18 decimals because totalAssets is denominated in the underlying kUSD, NOT at the 24 that decimals() returns for shares. For the concentration, cast call 0x96F5102C15b839757f811A98CEc3725Ac21DfA14 \"balanceOf(address)(uint256)\" 0x14f04cE02f35B29Af564A98544dD7e2393993946 against cast call 0x96F5102C15b839757f811A98CEc3725Ac21DfA14 \"totalSupply()(uint256)\" at the same block, both at 24 decimals, and the ratio is what splits seatedUSD into insider and external. To check that the cap is not enforced, cast call 0x96F5102C15b839757f811A98CEc3725Ac21DfA14 \"maxDeposit(address)(uint256)\" on any address at all and observe that it returns the uint256 maximum. To check that nothing has been paid, cast call 0x96F5102C15b839757f811A98CEc3725Ac21DfA14 \"convertToAssets(uint256)(uint256)\" 1000000000000000000000000 and compare against the same call before 2026-07-30: it has not moved."},"marketContext":{"available":true,"susde":{"stakingYieldPct":null,"protocolYieldPct":null,"defillamaApyPct":4.4,"stakedUsd":1395484809},"peers":[{"key":"ethena-susde","protocol":"Ethena","asset":"sUSDe","chain":"ethereum","apyPct":4.4,"tvlUsd":1395484809,"basis":"realized-trailing-measured-by-defillama","source":"defillama","sourceUrl":"https://yields.llama.fi/chart/66985a81-9c51-46ca-9977-42b4fe7bc6df","firstPartyUrl":"https://app.ethena.fi/api/yields/protocol-and-staking-yield","kerneMeasuredUrl":"https://kerne.fi/api/honesty-index"},{"key":"sky-susds","protocol":"Sky","asset":"sUSDS","chain":"ethereum","apyPct":3.52,"tvlUsd":4738703760,"basis":"realized-trailing-measured-by-defillama","source":"defillama","sourceUrl":"https://yields.llama.fi/chart/d8c4eff5-c8a9-46fc-a888-057c4c668e72","firstPartyUrl":"https://info-sky.blockanalitica.com/api/v1/overall/","kerneMeasuredUrl":"https://kerne.fi/api/honesty-index"},{"key":"falcon-susdf","protocol":"Falcon Finance","asset":"sUSDf","chain":"ethereum","apyPct":4.97,"tvlUsd":66787213,"basis":"realized-trailing-measured-by-defillama","source":"defillama","sourceUrl":"https://yields.llama.fi/chart/0f67a08c-3f24-4a4b-963e-541f5a5c0364","firstPartyUrl":"https://app.falcon.finance/earn/classic","kerneMeasuredUrl":"https://kerne.fi/api/honesty-index"}],"comparison":{"basisAsymmetry":"NOT LIKE FOR LIKE, AND THE DIFFERENCE FAVOURS KERNE. The Kerne figure on this response is a FORWARD MODEL of the deployed book, computed from a published formula on inputs that move hourly. Every peer figure here is a TRAILING, REALIZED rate DefiLlama computed from that vault's own share price, which is a record of what holders were actually paid. A model and a record are different species of number. Comparing them ranks Kerne on its intention against peers on their performance, so read any Kerne lead as a statement about the model, never about delivery.","scaleAsymmetry":"THE SIZE GAP IS THE OTHER HALF OF IT. The peer figures are realized across billions of dollars over years. The Kerne model describes a book in the low thousands. A rate is much easier to model on a small book than to sustain on a large one, and nothing here demonstrates that this model survives scale. The tvlUsd on each peer is published beside its rate so the reader can weigh that directly instead of taking our word for the caveat.","kerneRealized":"KERNE REALIZED IS EFFECTIVELY ZERO AND THAT IS THE NUMBER THAT MATTERS TO A DEPOSITOR. The skUSD vault has received exactly one yield distribution in its life, 0.10 kUSD on 2026-07-09, which the deployment registry records as a plumbing smoke test. Read the `realized` block on this same response, and the Honesty Index, where Kerne is the worst realized row on its own board. A protocol that published the flattering model without the unflattering realization would be doing precisely the thing this codebase exists to oppose.","howToCheck":"EVERY FIGURE HERE IS RE-DERIVABLE AND NONE IS STORED. Each peer carries the exact DefiLlama pool chart it was read from, the protocol's own first-party surface, and the Kerne endpoint that measures the same vault on chain hourly by the same ERC-4626 share-price method applied to Kerne itself. Three independent reads per peer, all public, all unauthenticated. The Kerne headline is recomputed on every request to this endpoint from the methodology string above it. Nothing on this response is a cached rate, so a comparison that is favourable today may not be next week, and this endpoint will publish it either way."},"headline":{"pct":4.4,"source":"defillama","sourceNote":"per DefiLlama's published data"},"sources":{"ethena":"https://app.ethena.fi/api/yields/protocol-and-staking-yield","defillamaChart":"https://yields.llama.fi/chart/66985a81-9c51-46ca-9977-42b4fe7bc6df"},"asOf":"2026-08-16T20:57:32.197Z","note":"sUSDe is the largest delta-neutral synthetic dollar; its realized rate is published by Ethena and tracked independently by DefiLlama. The Kerne number above is a forward model of the deployed book, not a realized distribution: the hedge is sized one for one against on-chain spot, so venue leverage reduces the margin that has to be posted rather than multiplying the carry earned. This endpoint carried a separate 3x design target at scale under its own label until 28 July 2026; it has been withdrawn and will not return. Both figures move; verify them at the source URLs."},"fundingRates":{"hyperliquid":{"venue":"hyperliquid","rate":0.0000125,"annual":0.1095,"interval":"1h"},"okx":{"venue":"okx","rate":0.00006736,"annual":0.073754,"interval":"8h"}},"sources":{"stakingYield":0.0217,"fundingRate":0.0714,"stakingSource":"lido-sma-7d","fundingSource":"hyperliquid-60d-trailing","fundingWindowDays":60,"fundingEntries":1440,"leverage":2.214,"carryMultiplier":0.6889,"grossAPY":0.0642,"strategyCostFraction":0.152,"strategyNetAPY":0.0544,"insuranceAllocation":0.1,"protocolFee":0,"feePhase":"genesis"}}