The binding 0xArchive Data License is incorporated into the Terms of Service. This page explains that policy for developers. If this page conflicts with the Data License or Terms, the Data License and Terms control.
Practical Rule
You may use 0xArchive Data for internal and commercial purposes inside your business and products. Ordinary products and outputs are permitted when they materially transform the source data and do not expose original records or allow them to be reasonably reconstructed. Written permission is required for benchmarks, indices, financial products, standalone or substitute market-data products, raw redistribution, and white-label or OEM data delivery.What Requires Written Permission
Contact 0xArchive before doing any of the following:- Reselling raw 0xArchive records
- Publishing bulk copies or downloadable data dumps
- Mirroring or passing through the 0xArchive API
- Operating a substitute historical or live market-data feed
- Creating benchmarks, indices, or financial products
- Publishing an output that exposes original records or allows them to be reasonably reconstructed
- White-label or OEM delivery where access to the data itself is the product
Data Downloaded Before Cancellation
Cancellation or termination ends future access when the account entitlement expires. You may retain and continue using 0xArchive Data downloaded while the account was entitled to access it, subject to the Data License. Future updates, support, and access are not included after entitlement ends.Keep Source Context Attached To Data
Every stored dataset should carry enough context to show where it came from. Save the route, symbol, venue family, time window, query parameters, cursor chain,meta.request_id, freshness or quality state, and generation time alongside the payload. For Data Catalog exports, also store the job ID, schema keys, quote context, credits applied, and file format. That metadata makes a file useful to another engineer later and gives support enough context to diagnose an issue.
For example, a historical trades pull should store more than the rows: