US ESG Scores — Disclosures, Ratings & Sector Benchmarks (Top 1,000)
Environmental, Social, and Governance scores for the top 1,000 US-listed issuers by market cap (approximating the Russell 1000). Three complementary files: (1) esg_disclosures — 68,097 per-filing E/S/G/composite scores across 978 companies, linked back to the originating SEC form. (2) esg_ratings — 18,099 per-fiscal-year ESG risk-rating letters (A–F scale) plus industry rank, across 967 companies. (3) esg_sector_benchmark — 6,640 sector-level annual averages for benchmarking. ESG data of this quality is typically paywalled by MSCI / Sustainalytics; this dataset gives you an open, reproducible alternative. Read with pandas.read_csv(path, compression='gzip', parse_dates=['date']). Useful for: ESG-tilted portfolio construction, sustainability research, regulatory disclosure analysis, and training models that need ESG features.
Use Cases
- ESG-tilted portfolio construction and exclusion screens
- Sustainability factor research and ESG-momentum signals
- Sector-relative scoring (compare company score to benchmark)
- Regulatory and stakeholder disclosure analysis
- Training ML models with open ESG features (vs paywalled providers)
Methodology
Universe: top 1,000 US-listed issuers by market cap (NASDAQ/NYSE/AMEX), approximating Russell 1000. Three FMP endpoints: /stable/esg-disclosures (per-filing scores), /stable/esg-ratings (per-fiscal-year letter), /stable/esg-benchmark (annual sector averages, years 2018–2024). Scores are reported on the 0–100 scale where higher is better. Risk-rating letters use Sustainalytics-style A–F.
Update Schedule
Static snapshot. Re-run annually after new 10-K and ESG disclosures land.
Attribution
Source: ESG disclosures and risk ratings via Financial Modeling Prep.
Schema
| name | type |
|---|---|
| symbol | string |
| date | date |
| acceptedDate | date |
| cik | string |
| companyName | string |
| formType | string |
| environmentalScore | number |
| socialScore | number |
| governanceScore | number |
| ESGScore | number |
| url | string |
Sample Data
| cik | url | date | symbol | ESGScore | formType | companyName | socialScore | acceptedDate | governanceScore | environmentalScore |
|---|---|---|---|---|---|---|---|---|---|---|
| 0001090872 | https://www.sec.gov/Archives/edgar/data/1090872/000109087226000064/0001090872-26-000064-index.htm | 2026-07-31 | A | 70.02 | 10-Q | Agilent Technologies, Inc. | 69.77 | 2026-09-01 | 63.29 | 77.02 |
| 0001090872 | https://www.sec.gov/Archives/edgar/data/1090872/000109087226000055/0001090872-26-000055-index.htm | 2026-04-30 | A | 69.66 | 10-Q | Agilent Technologies, Inc. | 69.21 | 2026-06-01 | 63.34 | 76.42 |
| 0001090872 | https://www.sec.gov/Archives/edgar/data/1090872/000109087226000023/0001090872-26-000023-index.htm | 2026-01-31 | A | 69.55 | 10-Q | Agilent Technologies, Inc. | 69.5 | 2026-03-03 | 63.01 | 76.14 |
Get this via API
# 1. Add dAgentBase once, in any MCP client. No install, no vendor keys.
# Claude.ai / Claude Desktop: Settings -> Connectors -> Add custom connector
# Cursor / Claude Code / others: mcp.json
{
"mcpServers": {
"dagentbase": {
"url": "https://dagentbase.com/api/mcp",
"headers": { "Authorization": "Bearer dm_live_YOUR_KEY" }
}
}
}
# 2. Then ask your agent, in plain language:
# "Preview 'US ESG Scores — Disclosures, Ratings & Sector Benchmarks (Top 1,000)' and, if it fits, claim it and download the files."
# Tools it will use: search_listings -> preview_listing -> purchase_listing -> get_download_urls
# 1. Add dAgentBase once, in any MCP client. No install, no vendor keys.
# Claude.ai / Claude Desktop: Settings -> Connectors -> Add custom connector
# Cursor / Claude Code / others: mcp.json
{
"mcpServers": {
"dagentbase": {
"url": "https://dagentbase.com/api/mcp",
"headers": { "Authorization": "Bearer dm_live_YOUR_KEY" }
}
}
}
# 2. Then ask your agent, in plain language:
# "Preview 'US ESG Scores — Disclosures, Ratings & Sector Benchmarks (Top 1,000)' and, if it fits, claim it and download the files."
# Tools it will use: search_listings -> preview_listing -> purchase_listing -> get_download_urlsone time · open license
Details
Available formats