Company, news and hiring signals
A continuously monitored universe of ~50,000 companies. Categorised news events, hiring-page deltas, founder data and company-level search demand, point-in-time.
↓ Download this dataset as PDFProductWhat this is
Companies and founders are continuously monitored, their news is parsed and categorised, and their hiring pages are checked on a recurring schedule. The result is a single research-ready feed per company: profile, financial signals where public, founder and team data, a categorised event timeline, and a hiring-page change history. A preview API is available for ticker-keyed and domain-keyed lookups; bulk delivery covers the full universe. See data overview for the broader catalog.
DatasetCoverage
Numbers refresh continuously. Snapshot below was generated from the live database for this document.
SchemaPer-company fields
Company profile
One row per company, domain-unique.
| Field | Description |
|---|---|
domain | Canonical domain (unique key) |
company_name | Legal and friendly names |
country / state / city | Headquarters location |
founded / age | Year and computed age |
industry | Industry classification |
team_size | Headcount, with role splits where available |
engineers / marketers | Role-mix counts |
ticker | Public listing symbol where listed |
raised / funding / valuation | Capital and valuation where public |
arr / arpu / cac / rpe | Unit economics where public |
customers / profitable | Where disclosed |
events | Total event count for the company |
facebook / linkedin / twitter / crunchbase | Social and reference links |
updated / updated_events | Last refresh timestamps |
Events & signals
One row per categorised event, URL-unique.
| Field | Description |
|---|---|
company_id | Joins to company profile |
category | One of 15 categories (below) |
title / summary | Headline and parsed summary |
url | Source URL (unique key) |
source | Publisher or origin |
date | Event date as published |
added | First-seen timestamp on our side |
media | Image or asset URL where present |
Hiring pages
One row per company hiring/careers page.
| Field | Description |
|---|---|
company_id | Joins to company profile |
page | URL of the careers/hiring page |
intent | Page type (currently hiring) |
discovered | First-seen timestamp |
CategoriesEvent taxonomy
Every event is assigned to one category. Counts below are the live distribution across the ~97,500 categorised events.
Hiring monitoringWhat gets checked, and how often
Each tracked company's careers page is fetched on a recurring schedule and diffed for role changes. 9,099 careers pages produce ~2.91M historical checks, which is the substrate for "is this company hiring now?" and "what role mix is the team scaling into?".
- Hiring activity binary: is the company posting open roles right now
- Role-mix deltas: change in engineering vs go-to-market headcount over time
- Hiring freeze detection: a page that went from N roles to 0 is a flagged signal
- Replay-able timeline for point-in-time backtests on hiring as a leading indicator
PeopleFounders and team
~15,900 founders linked to their companies via companies.founder_id. Identity, contact and LinkedIn where known. Used for relationship mapping, due-diligence prep, and tracking founder activity across companies.
| Field | Description |
|---|---|
first_name / last_name | Founder identity |
email | Where public |
linkedin | Profile URL |
companies.founder_id | Join key back to company |
Demand signalsCompany-level Google Trends
12,642 company-level search-demand series. Same underlying source as our Russell 3000 search-demand product, but keyed to the private-company universe rather than tickers. Search interest is mapped to the issuer (not the raw query) and refreshed on a rolling cadence.
| Field | Description |
|---|---|
company_id | Joins to company profile |
term / translation | Search query mapped to the issuer (English translation if non-EN) |
region | ISO-3166 country code |
5years | Weekly Google interest, 0–100, JSON array |
searchVolume / cpc | Monthly search volume and cost-per-click where available |
pace / growth_type | Trajectory classifier |
early / peaking / peaked | Lifecycle flags |
main | Marks the canonical term for the company |
APIPreview endpoints
JSON over HTTPS. Four read-only endpoints: paginated company list with filters, full company profile, per-company event timeline, and hiring-page monitoring history. Production delivery (full universe, bulk extract, per-client keys) is delivered separately on engagement.
Base URL
https://vc.treendly.com/api/flatnineAuthentication
Bearer header preferred; ?api_key= available for quick testing:
# Bearer header Authorization: Bearer YOUR_KEY # or query parameter ?api_key=YOUR_KEY
Endpoints
/listpaginated companies, filters & full-text search/get?id= | ?domain=profile + founder + event & hiring summary + demand/events?id=paginated event timeline, category & date filters/hiring?id=monitored careers pages + aggregate check countsExample: filtered list
curl -H "Authorization: Bearer $FLATNINE_KEY" \ "https://vc.treendly.com/api/flatnine/list?country=United%20States&min_events=50&limit=3"
{
"total": 50031,
"limit": 3,
"offset": 0,
"count": 3,
"has_more": true,
"next_offset": 3,
"companies": [
{
"id": 35053,
"domain": "ycombinator.com",
"name": "Y Combinator",
"country": "United States",
"industry": null,
"founded": null,
"team_size": null,
"ticker": null,
"raised_usd": null,
"valuation_usd": null,
"event_count": 396
},
// ... two more
]
}
Example: full company profile
curl -H "Authorization: Bearer $FLATNINE_KEY" \
https://vc.treendly.com/api/flatnine/get?domain=databricks.com
{
"company": {
"id": 128,
"domain": "databricks.com",
"name": "Databricks",
"legal_name": "Databricks, Inc.",
"description": "Databricks combines the best of data warehouses and data lakes...",
"country": "United States",
"state": "California",
"city": "San Francisco",
"team_size": null,
"ticker": null,
"raised_usd": null,
"links": { "website": "https://databricks.com", "linkedin": null, ... },
"updated_at": "2026-05-26T19:10:05+00:00",
"events_updated_at": "2022-01-24T14:02:30+00:00"
},
"founder": null,
"event_summary": {
"total_events": 191,
"first_event_date": "2020-02-28",
"last_event_date": "2026-05-21",
"by_category": [
{ "category": "launch", "count": 55 },
{ "category": "partnership", "count": 30 },
// ... 13 more categories
]
},
"hiring_summary": { "pages_monitored": 2, "total_checks": 1 },
"search_demand": [ /* up to 5 mapped Google Trends series */ ]
}
Example: event timeline
curl -H "Authorization: Bearer $FLATNINE_KEY" \ "https://vc.treendly.com/api/flatnine/events?id=35053&category=partnership&limit=2"
{
"company_id": 35053,
"total": 305,
"count": 2,
"has_more": true,
"next_offset": 2,
"events": [
{
"id": 374773,
"category": "partnership",
"title": "Mentioned on Hacker News",
"summary": "Sage Care (YC S24) Is Hiring Software Engineers",
"source_url": "https://news.ycombinator.com/item?id=48282478",
"source": "hacker news",
"date": "2026-05-26",
"first_seen": "2026-05-26T20:00:10+00:00"
},
// ... more
]
}
List endpoint filters
| Param | Description |
|---|---|
limit | 1-200, default 50 |
offset | Pagination offset, default 0 |
country | ISO-3166 or full country name, case-insensitive exact match |
industry | Substring match, case-insensitive |
min_events | Only companies with at least N categorised events |
has_ticker | 1 to restrict to publicly-listed companies |
q | Search across company_name + domain + meta_description |
Response codes
| Status | Meaning |
|---|---|
200 | OK |
400 | Missing or malformed query parameter |
401 | Missing or invalid key |
404 | Company id or domain not found |
Methodology & deliveryHow it's built and shipped
- First-party collection: company pages, news, hiring pages and demand signals are fetched and parsed by infrastructure we operate, not resold third-party feeds
- Domain-keyed entities: every company has a unique canonical domain; events join via
company_id, so the universe is clean to merge with an internal CRM - URL-unique events: every event has a unique source URL, so re-ingestion does not duplicate signals
- Categorised on ingest: every event lands with one of 15 categories; counts above are the live distribution
- Point-in-time: events carry both a published
dateand a first-seenaddedtimestamp; hiring-page state is timestamped per check; nothing is back-dated - No consumer PII: founder data is the only person-level data and is sourced from public profiles (LinkedIn, company sites)
Delivery
- Preview API: JSON over HTTPS, Bearer-token auth, ticker- and domain-keyed lookups; rate-limited
- Bulk extract: CSV / JSON / Parquet via S3 or SFTP, full history at the cadence the client wants
- Production API: per-client keys, expanded endpoints, higher rate limits on engagement
- Incremental delivery: daily or weekly deltas on the same channel; backfill on request
- Universe mapping: entities mapped to the client's CRM or watchlist on delivery
Use casesWhat a research desk does with this
- Hiring Headcount and opex nowcast: careers-page deltas and role mix as a one-to-two-quarter lead on headcount, opex and management guidance; a freeze flags contraction before it prints
- Hiring Skill-mix shifts: engineers vs marketers headcount as a read on whether a company is building or going to market
- Events Single-name catalysts: categorised, source-attributed news with first-seen timestamps; reconstructable point-in-time for event studies
- Events Category-level base rates: launches, finance, partnerships, IPOs at scale across ~50k companies for cross-sectional work
- People Founder & team overlay: who is running the company, where the team is hiring, with stable joins back to company profile
- Demand Private-name search demand: 12,600 company-level Google Trends series for companies that do not have card or app-panel coverage
- Mapping Universe ready to join: domain-keyed, deduped, CRM-mergeable; delivered point-in-time to the client universe
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