Russell 3000 search-demand history
Entity-mapped Google Trends interest for US-listed equities, point-in-time, with a live preview API. Ticker in, weekly 5-year series out.
↓ Download this dataset as PDFProductWhat this is
A single, narrow slice of FlatNine's Google Trends search-demand history (see data overview for the full dataset): the universe is filtered to the Russell 3000 and each series is keyed to a US listing ticker. The keyword-to-entity mapping institutional users normally have to build themselves is already done. A read-only preview API is exposed so a desk can pull a single ticker and validate the data on its own infrastructure before any commercial conversation.
DatasetCoverage and shape
Each entry is a single US-listed equity mapped to one Google Trends search-demand series. Initial preview scope is the S&P 500 seed (~80% of Russell 3000 market cap); full R3000 expansion is delivered against the client universe on engagement.
Per-ticker fields
Identifier & mapping
One row per ticker.
| Field | Description |
|---|---|
ticker | US listing symbol |
company_name | Normalised issuer name |
sector | GICS-style sector |
industry | GICS-style industry |
trend.term | Search query mapped to the issuer |
trend.region | ISO-3166 country code (US) |
trend.last_refreshed_at | ISO-8601 last refresh time |
Time series
One row per ticker x week.
| Field | Description |
|---|---|
series.source | Constant: google_trends |
series.interval | Constant: weekly |
series.history | Constant: 5_years |
series.normalization | Google relative interest, 0–100 |
series.point_in_time | Snapshot delivered from engagement start; no look-ahead |
series.data[].date | Week-start date (YYYY-MM-DD, UTC) |
series.data[].unix_ts | Week-start Unix timestamp |
series.data[].interest | Google interest index, 0–100 |
APIPreview endpoint
JSON over HTTPS. Two endpoints: list the mapped tickers, or fetch one ticker's full series. Read-only and rate-limited. Production delivery (full R3000, multi-market, bulk extract) is delivered to S3 / SFTP, not through this preview endpoint.
Base URL
https://treendly.com/api/r3000Authentication
Send the preview key as a Bearer token, or as ?api_key= for quick testing:
# Bearer header (preferred) Authorization: Bearer YOUR_KEY # or query parameter ?api_key=YOUR_KEY
Endpoints
/api/r3000list ticker → trend mappings/api/r3000/{ticker}single-ticker 5-year weekly seriesExample: list mappings
curl -H "Authorization: Bearer $FLATNINE_KEY" \
https://treendly.com/api/r3000
{
"collection": "Russell 3000",
"scope_note": "Initial scope: S&P 500 (~500 tickers). Full R3000 expansion delivered against client universe on engagement.",
"ticker_count": 503,
"with_data": 498,
"source": "google_trends",
"tickers": [
{
"ticker": "AAPL",
"company_name": "Apple Inc.",
"sector": "Information Technology",
"industry": "Technology Hardware, Storage & Peripherals",
"search_term": "apple",
"region": "US",
"has_data": true
},
// ... 502 more
]
}
Example: single ticker
curl -H "Authorization: Bearer $FLATNINE_KEY" \
https://treendly.com/api/r3000/AAPL
{
"ticker": "AAPL",
"company_name": "Apple Inc.",
"sector": "Information Technology",
"industry": "Technology Hardware, Storage & Peripherals",
"trend": {
"id": 412903,
"term": "apple",
"region": "US",
"last_refreshed_at": "2026-05-19T03:14:00+00:00"
},
"series": {
"source": "google_trends",
"interval": "weekly",
"history": "5_years",
"normalization": "google_relative_index_0_to_100",
"point_in_time": "snapshot delivered from engagement start; no look-ahead",
"pending_refresh": false,
"point_count": 261,
"data": [
{ "date": "2021-05-23", "unix_ts": 1621728000, "interest": 42 },
{ "date": "2021-05-30", "unix_ts": 1622332800, "interest": 39 },
// ... 259 more weekly observations
]
}
}
Response codes
| Status | Meaning |
|---|---|
200 | OK |
400 | Malformed ticker (must match ^[A-Z]{1,5}(\.[A-Z]{1,2})?$) |
401 | Missing or invalid key |
404 | Ticker not in current preview mapping |
MethodologyHow the data is built
- Entity mapping: each ticker is bound to a Google Trends search term mapped to the issuer, not the raw symbol. Dual-class shares (GOOGL/GOOG, FOXA/FOX, NWSA/NWS) are merged onto the canonical issuer trend.
- Native Google index: values are the raw 0–100 relative interest index Google returns; no proprietary smoothing, scaling or signal engineering.
- Weekly cadence, 5-year rolling window per series, refreshed continuously.
- Point-in-time: snapshots are versioned from the engagement start so backtests do not see data that did not exist at the bar.
- Provenance documented: source (Google Trends), term, region and refresh timestamp travel with every series.
- No consumer PII: aggregate search index only.
Delivery beyond the preview
- Full Russell 3000 expanded against the client's investable universe on engagement.
- Bulk extract: CSV / JSON / Parquet via S3 or SFTP, point-in-time history at full length.
- Incremental delivery: weekly updates on the same channel; backfill on request.
- Per-client API keys with rate limits for production read access.
Use casesWhat a research desk does with this
- Signal Search-demand factor at the single-name level: weekly entity-mapped interest as an input to demand and revenue nowcasts.
- Signal Cross-validation of card, web-traffic and app panels with a fully independent demand series.
- Coverage Universe widening: small- and mid-cap R3000 names where card and web-traffic panels are too thin to model.
- Coverage Consumer-discretionary and brand-led issuers where named search demand leads reported revenue.
- Backtest Point-in-time history from engagement start, no look-ahead, for clean factor research and event studies.
- Mapping Entity work already done: ticker keyed, dual-class shares merged, sector and industry tagged; ready to join to your security master.
AccessGetting the data
Delivered by API or bulk export (CSV, JSON, Parquet, S3), with history and refresh cadence agreed per engagement.
Talk to us about this dataset