Use the data · API v1
Public data, without a gate.
The current Moat Index snapshot is available without an account, API key, or paid tier. The public endpoints are read-only and return prebuilt static files—never a live database or score-engine query.
Files are updated nightly after ingest, with the as-of date inside every file. This is not a realtime API; polling more often will not produce fresher data.
Current endpoint
Moat Index snapshot · CSV
GET /api/moat/index.csvDownloads the same current Top 100 operating-company index snapshot shown on The Moat Index, preserving its published order and rank fields.
Moat Index snapshot · JSON
GET /api/moat/index.jsonReturns the same ranked snapshot as structured JSON, including the version, as-of date, publication time, snapshot identifier, license, attribution, and dated score records.
Dates and nulls
Every CSV row carries snapshot_as_of, captured_at, and as_of_fiscal_year; JSON carries top-level asOfplus each record’s capture and fiscal-year dates. A blank CSV field or JSON null means the source value is honestly null; it does not mean zero. Both responses also send the snapshot date in X-Data-As-Of. Scores can reflect different fiscal years because companies file on different schedules.
Fields
The CSV includes rank, ticker, company, Moat Score, tier, verdict, sector, market capitalization, fiscal year, capture time, methodology version, and insufficient-data status. Score records are derived from public SEC filings; market data fields may be null.
License and required attribution
The dataset is licensed under Creative Commons Attribution 4.0 International (CC BY 4.0). You may share and adapt it, including commercially, but you must give appropriate credit, link the license, and indicate changes.
The Moat Index by Buy Like Buffett (AdvisorWorld.com Inc.), https://buylikebuffett.com/the-index, licensed CC BY 4.0.Preserve the snapshot date and methodology version when republishing. See Cite Us for score-specific citation guidance.
Rate expectations and availability
Responses are cached at the edge for one hour, and the underlying content-addressed artifacts are immutable. There is no uptime SLA. Reuse a downloaded snapshot instead of polling: one request per hour is the expected maximum for routine automation. An origin safety limit of600 requests per minute per forwarded client address applies on cache misses; ordinary edge-cache hits do not consume it. On 429 or 503, back off and retry later; a 503 is returned rather than publishing an empty or unverifiable snapshot.
Versioning
This is API v1. Additive columns may appear in v1; existing column names will not be repurposed. Materially incompatible changes will use a new documented version.