Atlas FairShares
FairShares (FAIRS) is the economic layer of the Atlas network. Every participant receives equal weekly income. Balances burn over time, converging to a fixed equilibrium — hoarding is unprofitable, and active participants naturally maintain access.
No ads, no rent-seeking middlemen. FairShares pay for storage, queries, and shelter leases. They can only be transferred between peers — never minted or bought from a central authority.
Weekly Rollover
Every Monday at 00:00 UTC, each registry runs a balance rollover. The formula applies a small burn rate then adds the weekly income grant. Balances naturally converge toward an equilibrium point.
// Runs every Monday at 00:00 UTC
// weeklyBurnRate = weeklyIncome / (equilibriumWeeks * weeklyIncome)
// = 100 / (100 * 100) = 0.01 (1 %)
newBalance = floor(balance * (1 - weeklyBurnRate)) + weeklyIncome
// Examples:
// balance = 0 → floor(0 * 0.99) + 100 = 100
// balance = 5000 → floor(5000 * 0.99) + 100 = 5050
// balance = 10000 → floor(10000 * 0.99) + 100 = 10000 (equilibrium)
// balance = 15000 → floor(15000 * 0.99) + 100 = 14950 (decays back) | Parameter | Default | Description |
|---|---|---|
weeklyIncome | 100 | FAIRS granted to every identity each week. |
initialGrant | 100 | FAIRS granted when a new identity is first seen. |
equilibriumWeeks | 100 | Number of weeks of income that equals the equilibrium balance (100 × 100 = 10,000 FAIRS). |
At equilibrium, the burn exactly equals the weekly income — the balance stays constant. Above equilibrium, balances decay back down. Below, they grow. This prevents hoarding and keeps the economy active.
Setup Envelope
Each registry publishes its FairShares configuration as a
DigitalDocument envelope with
additionalType: "atlas:fairSharesSetup". This defines
the economic parameters for that registry.
{
"@context": "https://schema.org",
"@type": "DigitalDocument",
"additionalType": "atlas:fairSharesSetup",
"description": "FairShares economic setup for this registry",
"text": {
"equilibriumWeeks": 100,
"weeklyIncome": 100,
"initialGrant": 100
},
"datePublished": "2026-04-01T00:00:00.000Z"
} Balance Sheet
After each weekly rollover, the registry publishes an updated balance
sheet as a DigitalDocument with
additionalType: "atlas:fairShares". This is an
auditable, signed record of every participant's current balance.
{
"@context": "https://schema.org",
"@type": "DigitalDocument",
"additionalType": "atlas:fairShares",
"description": "Current FairShares balance sheet for this registry",
"text": {
"b3a1f8...": 4200,
"e4c9d2...": 870,
"a7f3b1...": 10000
},
"datePublished": "2026-03-31T00:00:00.000Z"
} Spending
FairShares are spent in three ways across the network:
| Action | Envelope Type | How it works |
|---|---|---|
| Query units | BuyAction | Purchase query units from a registry. Default rate: 1 FAIRS = 10,000 query units. Each GET response decrements units by result count. |
| Shelter leases | RentAction | Rent storage from a Shelter registry. Cost:
gbPrice × gb + weekPrice × weeks. |
| Peer transfers | MoneyTransfer | Send FAIRS directly to another identity. Used for endorsements, boosting content visibility, or trading. |
Buying Query Units
When a user's free query units run out (HTTP 402), they submit a
BuyAction envelope to purchase more. The registry credits
floor(price × queryUnitsPerFairShare) units to
the identity.
{
"@context": "https://schema.org",
"@type": "BuyAction",
"additionalType": "atlas:queryUnits",
"seller": {
"@type": "Person",
"identifier": "<registry-identity-hash>"
},
"object": {
"@type": "Offer",
"additionalType": "atlas:queryUnits"
},
"price": 10,
"priceCurrency": "FAIRS"
} Peer Transfers
MoneyTransfer envelopes move FAIRS between identities. Transfers
are applied during the next weekly rollover. The sender must have sufficient
balance.
{
"@context": "https://schema.org",
"@type": "MoneyTransfer",
"sender": {
"@type": "Person",
"identifier": {
"@type": "PropertyValue",
"propertyID": "atlas:hash",
"value": "<sender-identity-hash>"
}
},
"recipient": {
"@type": "Person",
"identifier": {
"@type": "PropertyValue",
"propertyID": "atlas:hash",
"value": "<recipient-identity-hash>"
}
},
"amount": {
"@type": "MonetaryAmount",
"currency": "FAIRS",
"value": 50
}
} Data Fidelity
Registries track how many FairShares have been burned on content across seven freshness windows: 1 day, 7 days, 30 days, 180 days, 1 year, 5 years, and all time. These burn signals let Guide registries rank content by real usage rather than arbitrary metrics.
{
"type": "SocialMediaPosting",
"additionalType": null,
"window": "DAYS_7",
"totalBurn": 3200,
"identityHash": "b3a1f8..."
} | Window | Period |
|---|---|
DAYS_1 | Last 24 hours |
DAYS_7 | Last 7 days |
DAYS_30 | Last 30 days |
DAYS_180 | Last 180 days |
DAYS_365 | Last year |
DAYS_1825 | Last 5 years |
ALL_TIME | Lifetime total |
Proof-of-Work Tiers
Identities generate a Proof of Work on registration. The difficulty tier determines priority access when a registry is under load. Higher tiers get priority query lanes and reduced rate limiting.
| Tier | Difficulty | Description |
|---|---|---|
| hero | 2 leading zero bits | Base tier. Quick to generate. |
| titan | 6 leading zero bits | Mid tier. Makes bulk identities expensive. |
| atlas | 9 leading zero bits | Highest tier. Priority access under heavy load. |
Registry Query Policy
Each registry configures how FairShares translate into query access. These settings are part of the registry's configuration.
| Config | Default | Description |
|---|---|---|
initialFreeQueryUnits | 1,000 | Free query units granted to new identities. |
queryUnitsPerFairShare | 10,000 | Query units credited per FAIRS spent. |
maxResultsPerQuery | 100 | Maximum results returned per GET request. |
rateLimitPerIpPerMinute | 60 | Rate limit per IP address. |