show your work · durability

Eleven nines, computed
not rounded up.

Durability is the promise your data is still there in five years. The big clouds quote it from replication math and round up. XNS computes it from each provider's measured risk — and holds the line with continuous active repair.

11 nines durability80 data + 40 parity120 providers$0 replication

11 nines
Durability floor, actively held

80 + 40
Data + parity shards per object

120
Diverse providers per object

0
Replication — computed, not copied

Why eleven nines is usually a sleight of hand

Most clouds quote durability. We compute it.

Most cloud stores express durability as a percentage — 99.999999999%, “eleven nines.” With the big three it’s often a sleight of hand: figures derived from replication math and rounded up, leaning on “availability zones” that share more fate than the marketing admits. XNS has zero replication — so our eleven nines isn’t assumed from copies, it’s computed from each provider’s measured risk and provably held.

How the data is spread

Erasure coding, applied at the client.

Erasure coding chops data into pieces and adds redundancy pieces for durability. On the XNS distributed datacenter it’s applied at the client, creating thousands of slivers spread across a diverse set of providers — your Virtual Private Datacenter. Each object becomes 80 data + 40 parity shards across 120 providers. An object is lost only if more than 40 of its 120 shards are gone before repair.

80data shards
40parity shards
120providers per object
>40lost before repair = only failure
One object spread as 80 data and 40 parity slivers across 120 diverse providers
One object → 80 data + 40 parity slivers across 120 providers.

We don’t wait for failure

Active repair holds the line.

When providers weaken, the fix is to remake fresh slivers and place them on stronger providers — Active Repair, running on the network today.

Every provider earns a life_expectancy from its real history — contract-renewal failures and Merkle-proof results. The repairmonitor module converts that into each provider's probability of data loss, aggregates risk across your whole dataset, and recomputes it every cycle — 48 hours by default.

The moment loss probability approaches the line — one minus eleven nines — it re-uploads, migrating data off weak providers until risk falls back below the limit. Eleven nines isn't a launch-day snapshot; it's a floor we actively hold.

The repairmonitor module recomputes loss probability each cycle and re-uploads when the threshold is approached
The repairmonitor recomputes loss probability each cycle and re-uploads before the line is crossed.

Show your work

How we compute eleven nines.

We don't claim eleven nines by analogy to replication. We compute it — from each provider's measured risk, on a repeating cycle — and hold the line with active repair.

1

Each provider carries its own risk

Every provider earns a Life-Expectancy score from its real history — contract renewals and Merkle-proof results. That becomes Pe: the probability it loses your shard before we repair it. No two providers are assumed equal.

2

If every provider were identical

The chance that exactly K of N providers fail would be the binomial term:

CKN · PK · (1 − P)(N−K)

Those coefficients CKN are Pascal's triangle — each cell the sum of the two above it:

1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
3

They aren't identical — so we use the real distribution

We build the failure distribution one provider at a time with the Poisson-binomial recurrence, folding each in with its own Pe:

PKG = PKG−1 · (1 − Pe) + PK−1G−1 · Pe
4

Your object survives unless parity is overrun

With 80 data + 40 parity across 120 providers, an object is lost only if more than 40 of its 120 shards fail before repair. Durability is one minus that tail:

Durability = 1 − ΣK=41120 PK120

5 · Goalseek — we don't wait for failure

Repairmonitor recomputes this probability every cycle. The moment an object's loss probability approaches the line — one minus eleven nines — it re-uploads fresh slivers and pulls the risk back down. Eleven nines isn't a launch-day snapshot; it's a floor we actively hold.

That's the difference. The big three quote durability from replication math and round up. We quote it from each provider's measured risk — and keep it there.

Algorithm (Poisson-binomial "at least N events"): github.com/starius/nevents.

The numbers behind the number

The parameters, so you can check the arithmetic yourself.

ParameterValueWhere it comes from
Data shards per object80Reed-Solomon, set per price group; 80+40 is the deployed configuration, not a compiled-in constant
Parity shards per object40as above — an object survives until more than 40 of its 120 shards are gone
Providers per object120one shard each
Target durability0.99999999999the shipped default of the repair target, HOSTIO_REPAIRS_TARGET_DURABILITY
Horizon the figure covers360 hours15 days — HOSTIO_DURABILITY_STOR_DURATION_HOURS. Read the next section before comparing this to an annual figure
Recompute and repair cycle48 hoursHOSTIO_DURABILITY_CALCULATION_INTERVAL

What we assume about a provider failing

Each provider's chance of losing your shard inside the horizon comes from an exponential survival model. R is that provider's measured remaining life expectancy, earned from its own contract-renewal and Merkle-proof history; T is the 360-hour horizon:

Pe = 1 − e−T/R

Two cases are deliberately pessimistic rather than optimistic. A provider with no measured history is assigned Pe = 1 — counted as already lost. So is any shard that was written during an earlier run of a provider that has since restarted its life. Unknowns count against the number, never for it.

Running it to eleven nines

The formula above is only worth as much as the number you can put through it, so here is the number. Hold every provider at the same Pe and the Poisson-binomial collapses to a plain binomial over 120 shards, losing the object at 41 failures. That makes eleven nines a threshold you can check rather than a claim you have to accept:

If each provider's Pe is……chance of losing an objectNines
5%2.0 × 10−2322.7
8%3.9 × 10−1615.4
10%6.8 × 10−1312.2
10.87%1.0 × 10−1111.0
12%2.2 × 10−109.7
15%1.5 × 10−76.8

Read the highlighted row. Eleven nines over 15 days holds as long as each provider's chance of losing its shard inside that window stays at or under 10.87%. Put through the survival model, that is a measured remaining life expectancy of about 3,130 hours — roughly 130 days per provider. Below that line the repair cycle re-places shards on stronger providers until the number comes back. Every figure in this table is a binomial tail you can reproduce; nothing here is fitted or rounded up.

where the model stops being true

What the model assumes, and where those assumptions end.

A durability figure is only as good as the assumptions under it. Ours are printed here, in full, so you can decide for yourself whether they hold for your data. No other storage vendor publishes this section.

Correlated failure is not in the model

The recurrence treats provider failures as independent. Real ones sometimes are not — shared facilities, a common software version, or an economic shock can take several providers together. Diversity of the provider set is what limits this, not the arithmetic, and the arithmetic will not warn you when it stops holding.

Shards share a contract pool

Placement draws from one pool of host contracts rather than a pool per customer, so a single contract can hold shards belonging to many objects and many customers. A contract failure is therefore a small loss spread wide rather than a total loss for one object — but it means object outcomes are not fully independent of one another either.

Repair has to outrun loss, and it is measured doing it

Eleven nines is the line the repair cycle drives toward and re-checks every 48 hours, so between recomputes the figure is a forecast rather than a reading. The forecast is only as good as available repair capacity: if there were no healthier providers to move a shard to, the real number would sit below the line until there were.

Re-verified every cycle, not modeled once a year

The figure covers the next 360 hours because that is the window the repair cycle can hold and re-check against live data. An annual durability number is a projection made once and carried for twelve months; this one is recomputed from each provider's current measured history 24 times inside that same year. Two different quantities — ours is the one that gets tested.

The horizon is set by what the data supports. At 80+40, holding the line over a full year would require every provider to carry 8.7 years of measured remaining life expectancy. Over 15 days it requires 130 days — a threshold real providers meet, which is why the figure is re-established rather than assumed.

Independent review: none yet. The model, the parameters and the code that runs them have not been audited by an outside party. When that changes this page will say who did it and link what they published. Until then, the derivation above is the whole basis for the claim, which is exactly why it is printed here instead of summarized.

Storage you can prove.

Get keys, change one endpoint, and store on a network whose durability you can watch — and verify.

Claims on this page last verified
© Copyright - SCP, Corp | Xa Net Services and Affiliates