← Protocols
Celestia
01Description

Modular data availability layer with data availability sampling (DAS). Rollups post blobs via PayForBlobs transactions; light nodes verify availability with 2D Reed-Solomon-encoded share commitments.

02Best for
  • 01low-cost DA for rollups
  • 02sovereign rollups
  • 03high-throughput app chains
  • 04OP Stack / Orbit / Rollkit chains
  • 05Blobstream-bridged Ethereum L2s
03Install
  • go install github.com/celestiaorg/celestia-node/cmd/celestia@latest
04Environment variables
VariableScopeDescription
CELESTIA_NODE_URLServerURL of a celestia-node (light/bridge/full) RPC, e.g. http://localhost:26658.
CELESTIA_AUTH_TOKENServerJWT auth token for the celestia-node RPC (generated via `celestia <node-type> auth`).
CELESTIA_NAMESPACEClient29-byte namespace ID (hex) your rollup posts to.
05Prompt snippet
Use Celestia for data availability. Run a celestia-node light node and authenticate with a JWT. Submit blobs via the `blob.Submit` JSON-RPC method against your namespace; persist the returned height and share commitment as the inclusion proof. To bridge availability proofs to Ethereum, use Blobstream (or Blobstream X). Verify retrieval with `blob.Get(height, namespace, commitment)`. Choose `mocha-4` for testnet and `celestia` for mainnet.
06Gotchas
  • DA inclusion latency is ~12s per Celestia block — your rollup's soft-finality cannot beat this.
  • PayForBlobs fees are paid in TIA, not ETH — keep a hot TIA balance funded for the batcher.
  • Namespace IDs must be reserved/unique — collisions silently mix data with another rollup's blobs.
  • Light-node only setups depend on bridge/full nodes for retrieval; provision redundancy or use a hosted endpoint.
  • Blobstream proofs to Ethereum lag mainnet by tens of minutes — fast withdrawals require an additional fast-finality layer.
  • Max blob size per PFB is bounded; oversized batches must be split across multiple PFB txs in the same block.
07Alternatives