> ## Documentation Index
> Fetch the complete documentation index at: https://docs.peopledatalabs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Company Schema

<div className="schema-heading-style toc-max-depth-2" />

# Overview

This page details the company-related fields that we provide through the [Company Enrichment](/docs/company-enrichment-api) and [Company Search](/docs/company-search-api) APIs.

* [Base Company Fields](#base-company-fields): Common fields available to all customers by default
* [Headcount Insights Fields](#company-insights-fields): Premium fields presenting summaries of the employee headcount and trends, built by aggregating data from our Person dataset
* [Job Posting Insights Fields](#job-posting-insights): Premium fields presenting summaries of company hiring trends, built by aggregating data from our Job Posting dataset
* [Technology Data Fields](#technology-data-fields): Beta fields representing the technologies likely in use by a company
* [Premium Company Fields](#premium-company-fields): Premium company fields such as related companies, subsidiaries, acquisitions and more
* [Affiliated Entities](#affiliated_entities): Related company profile fields, including alpha Parent Subsidiary Details fields

<Info>
  **Field Availability**

  Please note: Not all fields are available in all bundles.
</Info>

* For more information about data formatting, see [Data Types](/docs/data-types).
* For a full example record, see [Example Company Record](/docs/example-company-record).
* For a simplified overview of our company fields, check out the [Company Data Overview](/docs/company-data-overview).
* For more details about our company fields, including fill rates and which fields are included in the base vs premium [field bundles](/docs/company-data-field-bundles), check out our [Company Stats](/docs/company-stats) pages.
* For a full data ingestion JSON schema, check out [this page](/docs/receiving-and-updating-data#data-ingestion-schemas).
* If you'd like access to premium fields or have questions about which fields are included in your specific field bundle(s), please [speak to one of our data consultants](https://peopledatalabs.com/talk-to-sales).

***

# Base Company Fields

These fields are available to all customers by default.

## Identifiers

***

### `id`

|                 |                                 |
| --------------- | ------------------------------- |
| **Data Type**   | `String`                        |
| **Description** | The identifier for the company. |

#### Field Details

The ID is a unique, hashed value that represents a specific company record.

#### Example

```json JSON theme={null}
  "id": "tnHcNHbCv8MKeLh92946LAkX6PKg"
```

***

### `name`

|                 |                                 |
| --------------- | ------------------------------- |
| **Data Type**   | `String`                        |
| **Description** | The company's main common name. |

#### Field Details

The company name will be lowercase with any leading/trailing whitespace removed. It is **not** guaranteed to be unique.

For the correct capitalization of the company name, see [`display_name`](#display_name).

The name value returned here does not undergo much cleaning or standardization. However, we clean and tokenize company names behind the scenes so they can be found using the [Company Search API](/docs/company-search-api). To see how company name cleaning works, check out the [Company Cleaner API](/docs/cleaner-apis#companyclean).

#### Example

```json JSON theme={null}
  "name": "people data labs"
```

***

### `display_name`

|                 |                                                                       |
| --------------- | --------------------------------------------------------------------- |
| **Data Type**   | `String`                                                              |
| **Description** | The company name, capitalized using the company’s self-reported name. |

#### Field Details

The `display_name` field preserves the capitalization of the company name (unlike [`name`](#name) which is always lowercase). `display_name` is set using the company’s self-reported name, so it should be accurate even for companies with non-standard capitalization (such as VMware, FedEx, or Dell EMC).

Use this field to display properly capitalized company names in a UI or other customer-facing project or product.

#### Example

```json JSON theme={null}
  "display_name": "VMware"
```

## Company Information

***

### `affiliated_profiles`

|                 |                                                                                             |
| --------------- | ------------------------------------------------------------------------------------------- |
| **Data Type**   | `Array [String]`                                                                            |
| **Description** | [Company IDs](#id) that are affiliated with the queried company (parents and subsidiaries.) |

#### Field Details

A list of [Company IDs](#id) that we have flagged as having an association to this company (either a parent or a subsidiary.) See [Parents and Subsidiaries](#parents-and-subsidiaries) for fields based on specific company associations.

#### Example

```json JSON theme={null}
  "affiliated_profiles": [
    "a1cpOkL4SHp0wSAKjbCeuwtAlno0",
    "3WBa1kollMtBbib5DoiCwwhyD9ks"
  ]
```

***

### `alternative_domains`

|                 |                                                           |
| --------------- | --------------------------------------------------------- |
| **Data Type**   | `Array [String]`                                          |
| **Description** | A list of alternate domains associated with this company. |

#### Field Details

If a company rebrands or otherwise changes its primary domain, old company websites will be kept in this list.

See [`website`](#website) for how we handle domains.

#### Example

```json JSON theme={null}
  "alternative_domains": [
    "peopledatalabs.com",
    "talentiq.co",
    "peopledatalabs.co"
  ]
```

***

### `alternative_names`

|                 |                                               |
| --------------- | --------------------------------------------- |
| **Data Type**   | `Array [String]`                              |
| **Description** | A list of names associated with this company. |

#### Field Details

A list of [names](#name) associated with the company filtered to ensure data quality.

#### Example

```json JSON theme={null}
  "alternative_names": [
    "people data labs",
    "people data labs inc",
    "talentiq"
  ]
```

***

### `employee_count`

|                 |                                                                                         |
| --------------- | --------------------------------------------------------------------------------------- |
| **Data Type**   | `Integer (>= 0)`                                                                        |
| **Description** | The current number of employees working at the company based on our number of profiles. |

#### Field Details

`employee_count` is an integer greater than or equal to zero. We calculate it by finding the number of profiles whose `experience.company.id ` matches the company with a non-null `job_start_date` and no end date.

For the company's self-reported size range, use the [`size`](#size) field instead. For more information about the different types of employee count data we provide, see [Employee Count Fields](/docs/employee-count-fields).

This number may be higher or lower than a company's real employee count depending on how many false positives and false negatives we have in our data as well as missing or duplicate individuals.

#### Example

```json JSON theme={null}
  "employee_count": 78
```

***

### `employee_count_by_country`

|                 |                                                        |
| --------------- | ------------------------------------------------------ |
| **Data Type**   | `Object`                                               |
| **Description** | The number of current employees broken out by country. |

#### Field Details

Each country will be one of our [Canonical Countries](/docs/location-countries). For more information about how each count is calculated, see [Employee Count Breakdowns](/docs/company-schema#employee-count-breakdowns).

Beginning in v25.0, this field will also contain an `other_uncategorized` subfield. Profiles that we have associated with the company but do not have enough information to assign a location to will be included in this field. For more information, see [Employee Count Fields](/docs/employee-count-fields).

#### Example

```json JSON theme={null}
  "employee_count_by_country": {
    "united states": 67,
    "canada": 2,
    "india": 1,
    "bangladesh": 1,
    "other_uncategorized": 2
  }
```

***

### `founded`

|                 |                                   |
| --------------- | --------------------------------- |
| **Data Type**   | `Integer (> 0)`                   |
| **Description** | The founding year of the company. |

#### Field Details

The founding year will be an integer greater than zero. If no year is found, it will be `null`.

If different sources list different founding years, we will choose the year that appears in the most sources. If multiple years appear in the same number of sources, we will use the latest year.

#### Example

```json JSON theme={null}
  "founded": 2015
```

***

### `headline`

|                 |                                 |
| --------------- | ------------------------------- |
| **Data Type**   | `String`                        |
| **Description** | The company’s headline summary. |

#### Field Details

`headline` is a short description of the company, limited to 300 characters.

#### Example

```json JSON theme={null}
  "headline": "Your Single Source of Truth"
```

***

### `size`

|                 |                                                                   |
| --------------- | ----------------------------------------------------------------- |
| **Data Type**   | `Enum (String)`                                                   |
| **Description** | A range representing the number of people working at the company. |

#### Field Details

The value of this field will be one of our canonical [Company Sizes](/docs/company-sizes). We derive it from the company's self-reported size on their social media profile.

For the true number of employees, use the [`employee_count`](#employee_count) field.

#### Example

```json JSON theme={null}
  "size": "11-50"
```

***

### `summary`

|                 |                               |
| --------------- | ----------------------------- |
| **Data Type**   | `String`                      |
| **Description** | A description of the company. |

#### Field Details

The company summary is a lowercase string and can contain escape characters such as `\n`. The string is limited to a maximum of 1000 characters.

#### Example

```
  "summary": "people data labs builds people data. \n\nuse our dataset
              of 1.5 billion unique person profiles to build products,
              enrich person profiles, power predictive modeling/ai,
              analysis, and more. we work with technical teams as their
              engineering focused people data partner. \n\nwe work with
              thousands of data science teams as their engineering focused
              people data partner. these include enterprises like adidas,
              ebay, and acxiom, as well as startups like madison logic,
              zoho, and workable. we are a deeply technical company, and
              are backed by two leading engineering venture capital firms
              - founders fund and 8vc.",
```

***

### `tags`

|                 |                                   |
| --------------- | --------------------------------- |
| **Data Type**   | `Array [String]`                  |
| **Description** | Tags associated with the company. |

#### Field Details

Each tag is a lowercase string.

There may be tags that seem to overlap (for example: `"data"`, `"analytics"` and `"data and analytics"`). This is intentional so that it is easier to search for companies matching a tag.

#### Example

```json JSON theme={null}
  "tags": [
    "data",
    "people data",
    "data science",
    "artificial intelligence",
    "data and analytics",
    "machine learning",
    "analytics",
    "database",
    "software",
    "developer apis"
   ]
```

***

### `website`

|                 |                              |
| --------------- | ---------------------------- |
| **Data Type**   | `String`                     |
| **Description** | The primary company website. |

#### Field Details

This field contains the address of the primary company website associated with the record.

We standardize websites by removing `https://www.` and any additional subdomains and paths (with certain exceptions). Popular hosting platforms (like Facebook, Blogspot, Wix, etc.) will retain their subdomains and paths. For example, `samspizza.blogspot.com` or `etsy.com/sams-pizza`.

Websites using link shortening services (like Bit.ly, TinyURL, ShortURL, etc.) will appear in full.

We have a list of invalid URL items (domains, subdomains and TLDs) that we check against. We also check if an iteration of the company name appears in the website address as a simple validation.

Ideally, this is the website address that people commonly use when accessing a company's site (such as `facebook.com`) and not an alias (such as `fb.com`).

As with [Social Presence](#social-presence), we do **not** verify that the website is valid.

#### Example

```json JSON theme={null}
  "website": "peopledatalabs.com"
```

## Funding Data

***

### `funding_stages`

|                 |                                               |
| --------------- | --------------------------------------------- |
| **Data Type**   | `Array [Enum (String)]`                       |
| **Description** | All disclosed funding stages for the company. |

#### Field Details

An unordered list of all funding stages for funding events announced by the company.

This is generated from the separate events in  [`funding_details.funding_type`](#funding_details).

All values in the list must be [Canonical Funding Rounds](/docs/funding-rounds). If there are multiple events tied to the same round (ex: Series A), that label will only appear once in the list.

#### Example

```json JSON theme={null}
  "funding_stages": [
    "series_b",
    "series_a",
    "seed"
  ]
```

***

### `last_funding_date`

|                 |                                                      |
| --------------- | ---------------------------------------------------- |
| **Data Type**   | [`String (Date)`](/docs/data-types#dates)            |
| **Description** | The date of the company’s most recent funding event. |

#### Field Details

The date of the company’s most recent funding event. This represents the publicly disclosed date of the closing of the financing, and will be independent of any prior dates associated with that same funding round.

#### Example

```json JSON theme={null}
  "last_funding_date": "2021-11-16"
```

***

### `latest_funding_stage`

|                 |                                                       |
| --------------- | ----------------------------------------------------- |
| **Data Type**   | `Enum (String)`                                       |
| **Description** | The stage of the company’s most recent funding event. |

#### Field Details

Must be one of the [Canonical Funding Rounds](/docs/funding-rounds).

#### Example

```json JSON theme={null}
  "latest_funding_stage": "series_b"
```

***

### `number_funding_rounds`

|                 |                                                        |
| --------------- | ------------------------------------------------------ |
| **Data Type**   | `Integer (> 0)`                                        |
| **Description** | The number of funding rounds announced by the company. |

#### Field Details

The number of separate funding events for the company. This is the total number of events in  [`funding_details`](#funding_details).

If multiple events are tied to the same funding round, they will each be counted toward the total (ex: 3 Series A events will add 3 to the total count).

#### Example

```json JSON theme={null}
  "number_funding_rounds": 7
```

***

### `total_funding_raised`

|                 |                                                     |
| --------------- | --------------------------------------------------- |
| **Data Type**   | `Float (> 0)`                                       |
| **Description** | The cumulative amount raised by the company in USD. |

#### Field Details

The cumulative amount raised by the company during all publicly disclosed funding rounds.

The value for this field is represented in USD. It is the sum of all known values from individual funding rounds (each of which is represented in \$ USD using “then-current” currency exchange rates).

#### Example

```json JSON theme={null}
  "total_funding_raised": 55250000.0
```

## Industry Types

***

### `industry`

|                 |                                            |
| --------------- | ------------------------------------------ |
| **Data Type**   | `Enum (String)`                            |
| **Description** | The self-reported industry of the company. |

#### Field Details

Industry is self-reported and will be one of our [Canonical Industries](/docs/industries). If no industry is found, the field will be `null`.

#### Example

```json JSON theme={null}
  "industry": "animation"
```

<br />

***

### `industry_v2`

|                 |                                                                                                                                                                      |
| --------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Data Type**   | [`Enum (String)`](/docs/industries-v2)                                                                                                                               |
| **Description** | Industry v2 is the self-reported industry from an expanded list of [Canonical v2 Industries](/docs/industries-v2). If no industry is found, the field will be `null` |

#### Field Details

Industry is self-reported and will be one of our [Canonical V2 Industries](/docs/industries-v2). If no industry is found, the field will be `null`.

#### Example

```json JSON theme={null}
  "industry": "textile manufacturing"
```

***

### `naics`

|                 |                                                                                                                                                                                                                  |
| --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Array [Object]`                                                                                                                                                                                                 |
| **Description** | An array of objects containing the industry classifications for a company according to the North American Industry Classification System (NAICS). A company can (and frequently does) have multiple NAICS codes. |

#### Field Details

Each NAICS code associated with the company will be included in the list. For each NAICS code, we provide the actual six-digit code as well as the official description for each level of the NAICS code.

PDL uses [NAICS 2017 industry categorization](https://www.bls.gov/cew/classifications/industry/home.htm).

PDL offers self-reported NAICS industry categorizations within the company data, where this data serves as an alternative to Industry and SIC for users to categorize or segment companies. Because the data PDL publishes represents self-reported data where the industry values were selected by employees of those companies prior to the 2022 revision, we have not bulk converted to, or inferred, NAICS 2022 categories for our existing NAICS values.

A NAICS code doesn’t have to use all six digits. Any unspecified field(s) in our data will have a `null` value.

| Field               | Data Type | Description                                                                                                                            |
| ------------------- | --------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| `naics_code`        | `String`  | The NAICS code associated with a company’s industry classification. [See canonical values](/docs/naics-codes).                         |
| `sector`            | `String`  | The industry classification according to the first two digits in the NAICS code. [See canonical values](/docs/naics-sectors).          |
| `sub_sector`        | `String`  | The industry classification according to the first three digits in the NAICS code. [See canonical values](/docs/naics-subsectors).     |
| `industry_group`    | `String`  | The industry classification according to the first four digits in the NAICS code. [See canonical values](/docs/naics-industry-groups). |
| `naics_industry`    | `String`  | The industry classification according to the first five digits in the NAICS code. [See canonical values](/docs/naics-industries).      |
| `national_industry` | `String`  | The industry classification according to all six digits in the NAICS code. [See canonical values.](/docs/naics-national-industries)    |

#### Example

```json JSON theme={null}
  "naics": [
    {
      "naics_code": "423920",
      "sector": "wholesale trade",
      "sub_sector": "merchant wholesalers, durable goods",
      "industry_group": "miscellaneous durable goods merchant wholesalers",
      "naics_industry": "toy and hobby goods and supplies merchant wholesalers",
      "national_industry": "toy and hobby goods and supplies merchant wholesalers"
    },
    ...
  ]
```

***

### `sic`

|                 |                                                                                                                                                                                                          |
| --------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Array [Object]`                                                                                                                                                                                         |
| **Description** | An array of objects containing the industry classifications for a company according to the Standard Industrial Classification (SIC) system. A company can (and frequently does) have multiple SIC codes. |

#### Field Details

Each SIC code associated with the company will be included in the list. For each SIC code, we provide the actual four-digit code as well as the official description for each level of the SIC code.

A SIC code doesn’t have to use all four digits. Any unspecified field(s) in our data will have a `null` value.

| Field             | Data Type | Description                                                                      |
| ----------------- | --------- | -------------------------------------------------------------------------------- |
| `sic_code`        | `String`  | The SIC code associated with a company’s industry classification.                |
| `major_group`     | `String`  | The industry classification according to the first two digits in the SIC code.   |
| `industry_group`  | `String`  | The industry classification according to the first three digits in the SIC code. |
| `industry_sector` | `String`  | The industry classification according to all four digits in the SIC code.        |

#### Example

```json JSON theme={null}
  "sic": [
    {
      "sic_code": "7372",
      "major_group": "business services",
      "industry_group": "computer programming, data processing, and other computer related services",
      "industry_sector": "prepackaged software"
    },
    ...
   ]
```

## Primary Location

***

### `location`

|                 |                                                                                                                  |
| --------------- | ---------------------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                                                         |
| **Description** | An object containing increasingly granular information about the location of the company’s current headquarters. |

#### Field Details

A company's location is the location of its Headquarters (HQ). We determine a company’s current Headquarters/primary office based on the location that we see most often in our sources.

For more information on our standard location fields, see [Data Formatting: Locations](/docs/data-formatting#locations).

#### Example

```json JSON theme={null}
  "location": {
    "name": "san francisco, california, united states",
    "locality": "san francisco",
    "region": "california",
    "metro": "san francisco, california",
    "country": "united states",
    "continent": "north america",
    "street_address": "455 market street",
    "address_line_2": "suite 1670",
    "postal_code": "94105",
    "geo": "37.77,-122.41"
  }
```

## Stock Information

***

### `mic_exchange`

|                 |                                                                                        |
| --------------- | -------------------------------------------------------------------------------------- |
| **Data Type**   | `Enum (String)`                                                                        |
| **Description** | The MIC code for the stock exchange that the company's [ticker](#ticker) is listed on. |

#### Field Details

`mic_exchange` represents the Market Identified Code (MIC) standard exchange code corresponding to the stock exchange of the company.

The value of `mic_exchange` will always be one of our [Canonical MIC Codes](/docs/mic-codes) or `null` if there is no [ticker](#ticker).

#### Example

```json JSON theme={null}
  "mic_exchange": "xnams"
```

***

### `ticker`

|                 |                                                 |
| --------------- | ----------------------------------------------- |
| **Data Type**   | `String (Uppercase)`                            |
| **Description** | The company ticker (only for public companies.) |

#### Field Details

`ticker` is the uppercase string of the company’s stock symbol.

If a company is not public (as listed in its [`type`](#type)), its ticker will be `null`.

#### Example

```json JSON theme={null}
  "ticker": "MOO"
```

***

### `type`

|                 |                   |
| --------------- | ----------------- |
| **Data Type**   | `Enum (String)`   |
| **Description** | The company type. |

#### Field Details

`type` will be one of the Canonical [Company Types](/docs/company-types). If a company has a known [`ticker`](#ticker), then its `type` is public. If a company does not have a ticker and its ultimate parent company does, then its type is public\_subsidiary.

#### Example

```json JSON theme={null}
  "type": "private"
```

## Social Presence

We currently include company social profiles for LinkedIn, Yellow Pages, Xing, Twitter, Facebook and Crunchbase. Any profiles that we find for the company from these sources will be added to the [`profiles`](#profiles) list.

Each social profile URL has one or more standard formats that we parse and turn into a standard PDL format for that social URL. We invalidate profiles that have non-valid company stubs (for example, `linkedin.com/in`), and we also have a blacklist of usernames that we know are invalid.

We do **not** validate if a URL is valid (that is, whether you can access it) because doing this at scale is considered a Direct Denial of Service (DDoS) attack and/or a form of crawling. This is highly discouraged! We try to mitigate invalid URLs as much as possible by using Entity Resolution (Merging) to link URLs together and then tagging the primary URL at the top level for key networks.

***

### `linkedin_id`

|                 |                                                                         |
| --------------- | ----------------------------------------------------------------------- |
| **Data Type**   | `String`                                                                |
| **Description** | The main LinkedIn profile ID for the company based on source agreement. |

#### Example

```json JSON theme={null}
  "linkedin_id": "18170482"
```

***

### `linkedin_slug`

|                 |                                  |
| --------------- | -------------------------------- |
| **Data Type**   | `String`                         |
| **Description** | The company’s LinkedIn URL slug. |

#### Field Details

To support our [upcoming change to PDL Company IDs](/changelog/january-2024-release-notes-v25#company-id), we are adding the new `linkedin_slug` field. This field is generated in the same way as our [current company `id` field](/docs/company-schema#id).

For new company records that do not have associated LinkedIn pages, this field will be null.

#### Example

```json JSON theme={null}
  "linkedin_slug": "peopledatalabs"
```

***

### `linkedin_url`

|                 |                                                                          |
| --------------- | ------------------------------------------------------------------------ |
| **Data Type**   | `String`                                                                 |
| **Description** | The main LinkedIn profile URL for the company based on source agreement. |

#### Example

```json JSON theme={null}
  "linkedin_url": "linkedin.com/company/peopledatalabs"
```

***

### `facebook_url`

|                 |                                                                          |
| --------------- | ------------------------------------------------------------------------ |
| **Data Type**   | `String`                                                                 |
| **Description** | The main Facebook profile URL for the company based on source agreement. |

#### Example

```json JSON theme={null}
  "facebook_url": "facebook.com/peopledatalabs"
```

***

### `twitter_url`

|                 |                                                                         |
| --------------- | ----------------------------------------------------------------------- |
| **Data Type**   | `String`                                                                |
| **Description** | The main Twitter profile URL for the company based on source agreement. |

#### Example

```json JSON theme={null}
  "twitter_url": "twitter.com/peopledatalabs"
```

***

### `profiles`

|                 |                                                                                                     |
| --------------- | --------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Array [String]`                                                                                    |
| **Description** | A list of all known social profile URLs for the company from [our known sources](#social-presence). |

#### Example

```json JSON theme={null}
  "profiles": [
    "linkedin.com/company/peopledatalabs",
    "linkedin.com/company/18170482",
    "facebook.com/peopledatalabs",
    "twitter.com/peopledatalabs",
    "crunchbase.com/organization/talentiq"
  ]
```

## PDL Record Information & Metadata

***

### `dataset_version`

|                 |                                    |
| --------------- | ---------------------------------- |
| **Data Type**   | `String`                           |
| **Description** | The major or minor release number. |

#### Field Details

Note: This number corresponds to the [data release number](/changelog), not the API release number.

#### Example

```json JSON theme={null}
  "dataset_version": "19.2"
```

***

# Company Insights Fields

Premium fields presenting summaries of the employee headcount and trends, built by aggregating data from from our [Person Dataset](/docs/fields).

## Average Employee Tenure

Average employee tenure is the average number of years employees work for the company. It is represented by a floating number greater than zero and rounded to the nearest thousandth. It could skew lower if there have been a lot of recent hires.

The average is calculated using `experience.start_date` and `experience.end_date` for each employee found in our Person records.

If no start date is given or if a date only contains a year but no month, then the experience is not counted toward the average.

***

### `average_employee_tenure`

|                 |                                                 |
| --------------- | ----------------------------------------------- |
| **Data Type**   | `Float (> 0)`                                   |
| **Description** | The average years of experience at the company. |

#### Field Details

This insight shows the average number of years that employees at the company have worked based on `experience.start_date` and `experience.end_date`.

#### Example

```json JSON theme={null}
  "average_employee_tenure": 2.75
```

***

### `average_tenure_by_level`

|                 |                                                              |
| --------------- | ------------------------------------------------------------ |
| **Data Type**   | `Object`                                                     |
| **Description** | The average years of experience at the company by job level. |

#### Field Details

This insight shows the average number of years that employees at the company have worked broken out by their level at the company. The average for each level is calculated using the same logic as [`average_employee_tenure`](#average_employee_tenure).

The level names come from `experience.title.levels`, meaning they will always be one of the [Canonical Job Levels](/docs/job-title-levels).

#### Example

```json JSON theme={null}
  "average_tenure_by_level": {
    "entry": 0.3,
    "unpaid": 2.0,
    "senior": 6.0,
    "director": 3.0,
    "vp": 2.4,
    "training": 0.2,
    "manager": 4.0,
    "owner": 3.2,
    "partner": 2.4,
    "cxo": 8.1
  }
```

***

### `average_tenure_by_role`

|                 |                                                             |
| --------------- | ----------------------------------------------------------- |
| **Data Type**   | `Object`                                                    |
| **Description** | The average years of experience at the company by job role. |

#### Field Details

This insight shows the average number of years that employees at the company have worked broken out by their role at the company. The average for each role is calculated using the same logic as [`average_employee_tenure`](#average_employee_tenure).

The role names come from `experience.title.role`, meaning they will always be one of the [Canonical Job Roles](/docs/job-title-roles).

#### Example

```json JSON theme={null}
  "average_tenure_by_role": {
    "real_estate": 4.5,
    "design": 2.0,
    "trades": 3.2,
    "marketing": 0.1,
    "education": 6.5,
    "legal": 8.0,
    "customer_service": 4.0,
    "finance": 5.0,
    "public_relations": 8.1,
    "engineering": 2.1,
    "human_resources": 0.5,
    "media": 0.4,
    "sales": 0.6,
    "operations": 0.1,
    "health": 2.0
  }
```

## Median Employee Tenure

Median employee tenure is the median number of years employees work for the company. It is represented by a floating point number greater than zero and rounded to the nearest thousandth.

The median is calculated using `experience.start_date` and `experience.end_date` for each employee found in our Person records.

If no start date is given or if a date only contains a year but no month, then the experience is not counted toward the median.

***

### `median_employee_tenure`

|                 |                                                                       |
| --------------- | --------------------------------------------------------------------- |
| **Data Type**   | `Float (> 0)`                                                         |
| **Description** | The median number of years that employees have worked at the company. |

#### Field Details

This insight shows the [median ](https://en.wikipedia.org/wiki/Median) number of years that employees at the company have worked based on `experience.start_date` and `experience.end_date`.

#### Example

```json JSON theme={null}
 "median_employee_tenure": 2.641
```

***

### `median_tenure_by_level`

|                 |                                                                                                                                 |
| --------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                                                                        |
| **Description** | The median number of years that employees have worked at the company, broken out by [job title levels](/docs/job-title-levels). |

#### Field Details

This insight shows the [median](https://en.wikipedia.org/wiki/Median) number of years that employees at the company have worked broken out by their [level ](/docs/job-title-levels) at the company. The median for each level is calculated using the same logic as [`median_employee_tenure`](#median_employee_tenure).

The level names come from `experience.title.levels`, meaning they will always be one of the [Canonical Job Levels](/docs/job-title-levels).

#### Example

```json JSON theme={null}
  "median_tenure_by_level": {
    "unpaid": 0.0,
    "cxo": 4.653,
    "partner": 0.0,
    "owner": 9.861,
    "director": 1.785,
    "vp": 2.617,
    "senior": 1.958,
    "manager": 1.813,
    "entry": 0.0,
    "training": 0.5
  }
```

***

### `median_tenure_by_role`

|                 |                                                                                                                              |
| --------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                                                                     |
| **Description** | The median number of years that employees have worked at the company, broken out by [job title role](/docs/job-title-roles). |

#### Field Details

This insight shows the [median](https://en.wikipedia.org/wiki/Median) number of years that employees at the company have worked broken out by their [role](/docs/job-title-roles) at the company. The average for each role is calculated using the same logic as [`median_employee_tenure`](#median_employee_tenure).

The role names come from `experience.title.role`, meaning they will always be one of the [Canonical Job Roles](/docs/job-title-roles).

#### Example

```json JSON theme={null}
  "median_tenure_by_role": {
    "advisory": 2.083,
    "trade": 0.0,
    "manufacturing": 0.0,
    "hospitality": 0.0,
    "public_service": 0.0,
    "support": 1.546,
    "research": 2.625,
    "product": 1.993,
    "education": 0.0,
    "human_resources": 2.013,
    "legal": 0.0,
    "operations": 3.619,
    "fulfillment": 1.771,
    "professional_service": 0.0,
    "creative": 1.833,
    "marketing": 1.689,
    "partnerships": 1.56,
    "sales_engineering": 2.051,
    "sales": 1.964,
    "health": 0.0,
    "analyst": 1.683,
    "finance": 4.563,
    "engineering": 2.993
  }
```

## Employee Count Breakdowns

The count for each category will always be an integer value greater than or equal to zero.

This number may be higher or lower than a company's real employee count depending on how many false positives and false negatives we have in our data, missing and duplicate individuals, and missing information on start dates and job roles.

If no start date is given, then the experience is not counted.

For the overall employee count, see [`employee_count`](#employee_count). For the company's self-reported size, see [`size`](#size).

Note that discrepancies between the [`employee_count`](#employee_count), the most recent [`employee_count_by_month`](#employee_count_by_month), and aggregated[`employee_count_by_month_by_role`](#employee_count_by_month_by_role) and [`employee_count_by_month_by_level`](#employee_count_by_month_by_level) counts are expected. For more information about the logic used to calculate these values, see [this page](/docs/employee-count-fields).

***

### `employee_count_by_month`

|                 |                                                   |
| --------------- | ------------------------------------------------- |
| **Data Type**   | `Object`                                          |
| **Description** | The number of employees at the end of each month. |

#### Field Details

The total number of profiles associated with this company at the end of each month in the format `YYYY-MM`. The date range begins at the start date of the first associated employee or January 1, 2010, whichever is most recent. The final month in the range will be the last full month before the last monthly [Data Build](/docs/data-build). Most often this is the month before request was submitted. For example, if you make a request mid-March, the response will contain all data up to that February.

#### Example

```json JSON theme={null}
  "employee_count_by_month": {
    "2021-07": 84,
    "2021-08": 86,
    "2021-09": 84
  }
```

***

### `employee_count_by_month_by_level`

|                 |                                                                             |
| --------------- | --------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                    |
| **Description** | The number of employees at the end of each month, broken down by job level. |

#### Field Details

The total number of profiles associated with this company at the end of each month in the format `YYYY-MM` broken down by `experience.title.levels`. The level names will always be one of the [Canonical Job Levels](/docs/job-title-levels).

The date range begins at the start date of the first associated employee or January 1, 2010, whichever is most recent. The final month in the range will be the last full month before the last monthly [Data Build](/docs/data-build). Most often this is the month before request was submitted. For example, if you make a request mid-March, the response will contain all data up to that February.

If a person changes levels within a company during the same month, they will be counted in the same month towards both levels. An individual may have more than a single level for the same experience object, in which case they will contribute towards multiple levels.

#### Example

```json JSON theme={null}
  "employee_count_by_month_by_level": {
    "2015-03": {
      "partner": 0,
      "vp": 0,
      "owner": 1,
      "entry": 0,
      "director": 0,
      "unpaid": 0,
      "senior": 0,
      "cxo": 1,
      "manager": 0,
      "training": 0
    },
    ...
    "2021-06": {
      "partner": 0,
      "vp": 3,
      "owner": 1,
      "entry": 10,
      "director": 2,
      "unpaid": 2,
      "senior": 5,
      "cxo": 1,
      "manager": 3,
      "training": 0
    }
  }
```

***

### `employee_count_by_month_by_role`

|                 |                                                                            |
| --------------- | -------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                   |
| **Description** | The number of employees at the end of each month, broken down by job role. |

#### Field Details

The total number of profiles associated with this company at the end of each month in the format `YYYY-MM` broken down by `experience.title.role`. The role names will always be one of the [Canonical Job Roles](/docs/job-title-roles).

The date range begins at the start date of the first associated employee or January 1, 2010, whichever is most recent. The final month in the range will be the last full month before the last monthly [Data Build](/docs/data-build). Most often this is the month before request was submitted. For example, if you make a request mid-March, the response will contain all data up to that February.

If a person changes roles with a company during the same month, they will only be counted for a single role.

Beginning in v25.0, each month will also contain an `other_uncategorized` subfield. Profiles that we have associated with the company but do not have enough information to assign a role to will be included in this field. For more information, see [Employee Count Fields](/docs/employee-count-fields).

#### Example

```json JSON theme={null}
  "employee_count_by_month_by_role": {
    "2015-03": {
      "engineering": 0,
      "education": 0,
      "media": 0,
      "design": 0,
      "trades": 0,
      "health": 0,
      "real_estate": 0,
      "customer_service": 0,
      "legal": 0,
      "human_resources": 0,
      "finance": 0,
      "public_relations": 0,
      "marketing": 0,
      "sales": 0,
      "operations": 0,
      "other_uncategorized": 1
    },
    ...
    "2021-06": {
      "engineering": 1,
      "education": 0,
      "media": 0,
      "design": 0,
      "trades": 0,
      "health": 0,
      "real_estate": 0,
      "customer_service": 0,
      "legal": 0,
      "human_resources": 0,
      "finance": 0,
      "public_relations": 0,
      "marketing": 0,
      "sales": 0,
      "operations": 0,
      "other_uncategorized": 8
    }
  }
```

***

### `employee_count_by_class`

|                 |                                                                                          |
| --------------- | ---------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                                 |
| **Description** | The number of current employees broken down by [Job Title Class](/docs/job-title-class). |

#### Field Details

The total number of profiles associated with this company at the end of the most recent month, broken down by `experience.title.class`. The role names will always be one of the [Canonical Job Title Class](/docs/job-title-class) labels. This field will also contain an `other_uncategorized` subfield that contains profiles we have associated with the company but do not have enough information to assign a role to.

#### Example

```json JSON theme={null}
 "employee_count_by_class": {
    "other_uncategorized": 16,
    "general_and_administrative": 12,
    "research_and_development": 29,
    "sales_and_marketing": 22,
    "services": 14,
  }

```

***

### `employee_count_by_role`

|                 |                                                                                        |
| --------------- | -------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                               |
| **Description** | The number of employees (`INT`) by Job Role on the final day of the most recent month. |

#### Field Details

The total number of profiles associated with this company at the end of the most recent month, broken down by `experience.title.role`. The role names will always be one of the [Canonical Job Roles](/docs/job-title-roles). This field will also contain an `other_uncategorized` subfield that contains profiles we have associated with the company but do not have enough information to assign a role to.

This field is equivalent to the final month in the [`employee_count_by_month_by_role`](/docs/company-schema#employee_count_by_month_by_role) field.

#### Example

```json JSON theme={null}
  "employee_count_by_role": {
    "real_estate": 0,
    "design": 2,
    "trades": 0,
    "marketing": 4,
    "education": 4,
    "legal": 0,
    "customer_service": 10,
    "finance": 6,
    "public_relations": 1,
    "engineering": 24,
    "human_resources": 3,
    "media": 1,
    "sales": 12,
    "operations": 10,
    "health": 0,
    "other_uncategorized": 10
  }
```

***

### `employee_count_by_sub_role`

|                 |                                                                                                |
| --------------- | ---------------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                                       |
| **Description** | The number of current employees broken down by [Job Title Sub Role](/docs/job-title-subroles). |

#### Field Details

The total number of profiles associated with this company at the end of the most recent month, broken down by `experience.title.sub_role`. The role names will always be one of the [Canonical Job Title Subroles](/docs/job-title-subroles). This field will also contain an `other_uncategorized` subfield that contains profiles we have associated with the company but do not have enough information to assign a role to.

#### Example

```json JSON theme={null}
{
  "employee_count_by_sub_role": {
    "other_uncategorized": 19,
    "health_and_safety": 0,
    "graphic_design": 1,
    "veterinarian": 0,
    "data_science": 2,
    "restaurants": 0,
    "marketing_services": 2,
    "planning_and_analysis": 1,
...
    "mechanical": 0
  }
}

```

## Employee Growth and Churn Rates

All calculation time frames are based on the month that you make the request. If you make the request in April, the three-month rate will use data from January onward.

If no start date is given, then the experience is not counted.

Additionally, if a date only contains a year but no month, it is assumed to be to be January for start dates and December (or the current month if December is in the future) for end dates.

***

### `employee_churn_rate`

|                 |                                                               |
| --------------- | ------------------------------------------------------------- |
| **Data Type**   | `Object`                                                      |
| **Description** | The rate of change in employee headcount from N months prior. |

#### Field Details

This is a representation of net employee turnover. The churn rate is rounded to four decimal points and is always greater than or equal to 0. If the company had 0 employees or did not exist at the start time for a specific window, then the churn rate is `null`.

Churn rate is calculated as `max(employee_count_n_months_ago - employee_count_current, 0)/employee_count_n_months_ago`. For example, if a company has 200 employees at the beginning of the month, and at the end of the month 100 leave and 100 remain then its churn rate = 100 / 200 = 0.5.

| Field      | Data Type      |
| ---------- | -------------- |
| `3_month`  | `Float (>= 0)` |
| `6_month`  | `Float (>= 0)` |
| `12_month` | `Float (>= 0)` |
| `24_month` | `Float (>= 0)` |

#### Example

```json JSON theme={null}
  "employee_churn_rate": {
    "3_month": 0.015,
    "6_month": 0.02,
    "12_month": 0.035,
    "24_month": 0.155
  }
```

***

### `employee_growth_rate`

|                 |                                                                 |
| --------------- | --------------------------------------------------------------- |
| **Data Type**   | `Object`                                                        |
| **Description** | The percentage increase in total headcount from N months prior. |

#### Field Details

The growth rate is rounded to four decimal points and can be negative if the current number of employees is less than in the past. If the company had zero employees or did not exist at the start time for a specific window, then the growth rate is `null`.

Growth rate is calculated as `(current_employee_count / previous_employee_count) - 1`. For example, if a company has 100 employees at the beginning of the month, and at the end of the month has grown to 200 employees then its growth rate = (200 / 100) - 1 = 1.0.

| Field      | Data Type |
| ---------- | --------- |
| `3_month`  | `Float`   |
| `6_month`  | `Float`   |
| `12_month` | `Float`   |
| `24_month` | `Float`   |

#### Example

```json JSON theme={null}
  "employee_growth_rate": {
    "3_month": 0.0595,
    "6_month": 0.0723,
    "12_month": 0.8542,
    "24_month": 1.4722
  }
```

***

### `employee_growth_rate_12_month_by_class`

|                 |                                                                              |
| --------------- | ---------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                     |
| **Description** | The twelve month rate of change by [Job Title Class](/docs/job-title-class). |

#### Field Details

The 12 month growth rate of the total number of profiles associated with this company at the end of the most recent month in the format `YYYY-MM` broken down by `experience.title.class`. The role names will always be one of the [Canonical Job Title Class](/docs/job-title-class) labels. This field will also contain an `other_uncategorized` subfield that contains profiles we have associated with the company but do not have enough information to assign a role to.

The growth rate is rounded to four decimal points and can be negative if the current number of employees is less than in the past. If the company had zero employees or did not exist at the start time for a specific window, then the growth rate is `null`.

Growth rate is calculated as `(current_employee_count / previous_employee_count) - 1`. For example, if a company has 100 employees at the beginning of the month 12 months ago, and at the end of the most recent month has grown to 200 employees then its growth rate = (200 / 100) - 1 = 1.0.

The 12 month growth rate will be computed using the last full month before the last monthly Data Build. Most often this is the month before request was submitted. For example, if you make a request mid-March, the response will contain the 12 month growth rate from February."

#### Example

```json JSON theme={null}
 "employee_growth_rate_12_month_by_class": {
    "other_uncategorized": 0.2,
    "general_and_administrative": -0.167,
    "research_and_development": 0.1,
    "sales_and_marketing": -0.333,
    "services": 0.0,
  }

```

***

### `employee_growth_rate_12_month_by_role`

|                 |                                                                                                  |
| --------------- | ------------------------------------------------------------------------------------------------ |
| **Data Type**   | `Object`                                                                                         |
| **Description** | The twelve month rate of change (`FLOAT`) by Job Role on the final day of the most recent month. |

#### Field Details

The 12 month growth rate of the total number of profiles associated with this company at the end of the most recent month in the format `YYYY-MM` broken down by `experience.title.role`. The role names will always be one of the [Canonical Job Roles](/docs/job-title-roles). This field will also contain an `other_uncategorized` subfield that contains profiles we have associated with the company but do not have enough information to assign a role to.

The growth rate is rounded to four decimal points and can be negative if the current number of employees is less than in the past. If the company had zero employees or did not exist at the start time for a specific window, then the growth rate is `null`.

Growth rate is calculated as `(current_employee_count / previous_employee_count) - 1`. For example, if a company has 100 employees at the beginning of the month 12 months ago, and at the end of the most recent month has grown to 200 employees then its growth rate = (200 / 100) - 1 = 1.0.

The 12 month growth rate will be computed using the last full month before the last monthly Data Build. Most often this is the month before request was submitted. For example, if you make a request mid-March, the response will contain the 12 month growth rate from February.

#### Example

```json JSON theme={null}
 "employee_count_12_month_growth_by_role": {
    "real_estate": null,
    "design": -0.2500,
    "trades": null,
    "marketing": -0.5000,
    "education": 0.0000,
    "legal": null,
    "customer_service": -0.4545,
    "finance": -0.2500,
    "public_relations": null,
    "engineering": -0.1220,
    "human_resources": -0.1667,
    "media": 0.0000,
    "sales": -0.1852,
    "operations": 0.000,
    "health": null,
    "other_uncategorized": 0.1471
  }
```

***

### `employee_growth_rate_12_month_by_sub_role`

|                 |                                                                                    |
| --------------- | ---------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                           |
| **Description** | The twelve month rate of change by [Job Title Sub Role](/docs/job-title-subroles). |

#### Field Details

The 12 month growth rate of the total number of profiles associated with this company at the end of the most recent month in the format `YYYY-MM` broken down by `experience.title.sub_role`. The role names will always be one of the [Canonical Job Title Subroles](/docs/job-title-subroles). This field will also contain an `other_uncategorized` subfield that contains profiles we have associated with the company but do not have enough information to assign a role to.

The growth rate is rounded to four decimal points and can be negative if the current number of employees is less than in the past. If the company had zero employees or did not exist at the start time for a specific window, then the growth rate is `null`.

Growth rate is calculated as `(current_employee_count / previous_employee_count) - 1`. For example, if a company has 100 employees at the beginning of the month 12 months ago, and at the end of the most recent month has grown to 200 employees then its growth rate = (200 / 100) - 1 = 1.0.

The 12 month growth rate will be computed using the last full month before the last monthly Data Build. Most often this is the month before request was submitted. For example, if you make a request mid-March, the response will contain the 12 month growth rate from February.

#### Example

```json JSON theme={null}
 "employee_growth_rate_12_month_by_sub_role": {
    "other_uncategorized": -0.2667,
    "advisory": 0.0,
    "analyst": null,
    "creative": null,
    "education": 0.2,
    "engineering": -0.069,
    "finance": 0.0,
    "health": null,
    "hospitality": null,
    "product_design": -0.675,
    "recruiting": 0.0,
    "manufacturing": null,
    "marketing": 0.0,
    "solutions_engineer": -0.2667,
	...
    "retail": null
  }

```

***

### `employee_growth_rate_12_month_by_country`

|                 |                                                                                                                                                                                                                                                                                                                                                                                                                            |
| --------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                                                                                                                                                                                                                                                                                                                                                                   |
| **Description** | The twelve month rate of change across each [country](/docs/location-countries). For each country, this field contains the current employee count, the employee count from one year ago, and the rate of growth or decline. See also: [`employee_count_by_country`](#employee_count_by_country). Note: users accessing PDL's Tabular Schema instead receive this data as columns in the `employee_count_by_country` table. |

#### Field Details

The 12 month growth rate of the total number of profiles associated with this company at the end of the most recent month in the format `YYYY-MM` broken down by `location.country`. The country names will always be one of the [Canonical Countries](/docs/location-countries) values.

For each country, this field will report:

* The current employee count within that country
* The employee count within that country from 12 months ago
* The 12 month rate of growth or decline

This field will also contain an `other_uncategorized` subfield that contains profiles we have associated with the company but do not have enough information to assign a role to.

The growth rate is rounded to four decimal points and can be negative if the current number of employees is less than in the past. If the company had zero employees or did not exist at the start time for a specific window, then the growth rate is `null`.

Growth rate is calculated as `(current count of employees with location.country in that country / count of employees at company with location.country in that country 12 months prior) - 1`. For example, if a company has 100 employees in the Canada at the beginning of the month 12 months ago, and at the end of the most recent month has grown to 200 employees in Canada, then its growth rate = (200 / 100) - 1 = 1.0.

The 12 month growth rate will be computed using the last full month before the last monthly Data Build. Most often this is the month before request was submitted. For example, if you make a request mid-March, the response will contain the 12 month growth rate from February."

#### Example

```json JSON theme={null}
  "employee_growth_rate_12_month_by_country": {
    "other_uncategorized": {
      "current_headcount": 1,
      "12_month_headcount": 0,
      "12_month_growth_rate": null
    },
    "united kingdom": {
      "current_headcount": 10,
      "12_month_headcount": 2,
      "12_month_growth_rate": 5
    },
    "india": {
      "current_headcount": 1,
      "12_month_headcount": 1,
      "12_month_growth_rate": 0
    },
    "colombia": {
      "current_headcount": 1,
      "12_month_headcount": 1,
      "12_month_growth_rate": 0
    },
    "canada": {
      "current_headcount": 74,
      "12_month_headcount": 52,
      "12_month_growth_rate": 0.4231
    },
    "philippines": {
      "current_headcount": 4,
      "12_month_headcount": 3,
      "12_month_growth_rate": 0.3333
    },
    "spain": {
      "current_headcount": 0,
      "12_month_headcount": 4,
      "12_month_growth_rate": -1
    },
    "portugal": {
      "current_headcount": 2,
      "12_month_headcount": 1,
      "12_month_growth_rate": 1
    },
    "united states": {
      "current_headcount": 168,
      "12_month_headcount": 172,
      "12_month_growth_rate": -0.0232
    }
  }
```

***

### `employee_turnover_rate`

|                 |                                                                                                                                                                                          |
| --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                                                                                                                                 |
| **Description** | The percentage of employees who left the company compared to the company’s average workforce size over the most recent period. This field may report turnover rates for various periods. |

#### Field Details

This is a representation of net employee turnover calculated as the gross number of employees departing compared to the average number of employees for a given time period. This field may contain multiple time periods based on your field bundle access.

| Field      | Data Type      | Bundle                                                          |
| ---------- | -------------- | --------------------------------------------------------------- |
| `3_month`  | `Float (>= 0)` | [Comprehensive](/docs/company-data-field-bundles#comprehensive) |
| `6_month`  | `Float (>= 0)` | [Comprehensive](/docs/company-data-field-bundles#comprehensive) |
| `12_month` | `Float (>= 0)` | [Premium](/docs/company-data-field-bundles#comprehensive)       |
| `24_month` | `Float (>= 0)` | [Comprehensive](/docs/company-data-field-bundles#comprehensive) |

Turnover is calculated as: `Gross Departures in Period / Average Total Employees in Period`. The output is rounded to 4 decimal points. If the company had 0 employees or did not exist at the start time for a specific window, then the turnover rate is `null`.

**Example calculation of `employee_turnover_rate.6_month` for a PDL Company record:**

```
Gross Departures by Month
    "2025-05": 0,
    "2025-06": 2,
    "2025-07": 0,
    "2025-08": 0,
    "2025-09": 2,
    "2025-10": 0
Employee Count by Month
    "2025-05": 85,
    "2025-06": 87,
    "2025-07": 87,
    "2025-08": 87,
    "2025-09": 87,
    "2025-10": 85

Calculation
(0+2+0+0+2+0) / ((85+87+87+87+87+85)/6)
= 4 / 86.3333
= 0.046

```

#### Example

```json JSON theme={null}
  "employee_turnover_rate": {
    "3_month": 0.0125,
    "6_month": 0.0250,
    "12_month": 0.0400,
    "24_month": 0.2000
  },
```

***

### `annualized_employee_turnover_rate`

|                 |                                                                                                                                                                                                                                                                                                                                                            |
| --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                                                                                                                                                                                                                                                                                                   |
| **Description** | The annualized percentage of employees who left the company compared to the company’s average workforce size over the most recent period. This field is identical to the [`employee_turnover_rate`](/docs/company-schema#employee_turnover_rate) field, except that each period is annualized to enable direct comparison across different points in time. |

#### Field Details

This is an annualized representation of employee turnover calculated as the gross number of employees departing compared to the average number of employees for a given time period. This field may contain multiple time periods based on your field bundle access.

| Field      | Data Type      | Bundle                                                          |
| ---------- | -------------- | --------------------------------------------------------------- |
| `3_month`  | `Float (>= 0)` | [Comprehensive](/docs/company-data-field-bundles#comprehensive) |
| `6_month`  | `Float (>= 0)` | [Comprehensive](/docs/company-data-field-bundles#comprehensive) |
| `12_month` | `Float (>= 0)` | [Comprehensive](/docs/company-data-field-bundles#comprehensive) |
| `24_month` | `Float (>= 0)` | [Comprehensive](/docs/company-data-field-bundles#comprehensive) |

Annualized turnover is calculated as: `Gross Departures in Period / Average Total Employees in Period * (12/Months in Period)`. The output is rounded to 4 decimal points. If the company had 0 employees or did not exist at the start time for a specific window, then the turnover rate is `null`.

**Example calculation of `employee_turnover_rate.6_month` for a PDL Company record:**

```
Gross Departures by Month
    "2025-05": 0,
    "2025-06": 2,
    "2025-07": 0,
    "2025-08": 0,
    "2025-09": 2,
    "2025-10": 0
Employee Count by Month
    "2025-05": 85,
    "2025-06": 87,
    "2025-07": 87,
    "2025-08": 87,
    "2025-09": 87,
    "2025-10": 85

Calculation
( (0+2+0+0+2+0) / ((85+87+87+87+87+85)/6) ) * (12/6)
= (4 / 86.3333) * 2
= 0.046 * 2
= 0.093
```

#### Example

```json JSON theme={null}
  "annualized_employee_turnover_rate": {
    "3_month": 0.0250,
    "6_month": 0.0500,
    "12_month": 0.0400,
    "24_month": 0.1000
  },
```

## Gross Additions and Departures

This insight shows the total number of employees that joined or left the company each month.

The count for each month will always be an integer greater than or equal to zero. The month range begins at the start date of the first associated employee or January 1, 2010, whichever is most recent. The final month in the range will be the last full month before the last monthly [Data Build](/docs/data-build). Most often this is the month before request was submitted. For example, if you make a request mid-March, the response will contain all data up to that February.

This number may be higher or lower than a company's real employee count depending on how many false positives and false negatives we have in our data, missing and duplicate individuals, and missing information on start/end dates.

If a start or end date is not given or only contains a year but no month, it is not counted. This differs from [`employee_count_by_month`](#employee_count_by_month) that assumes January if there is no month.

***

### `gross_additions_by_month`

|                 |                                                                  |
| --------------- | ---------------------------------------------------------------- |
| **Data Type**   | `Object`                                                         |
| **Description** | The total number of profiles that joined the company each month. |

#### Field Details

The total number of profiles that joined the company each month in the format `YYYY-MM` based on `experience.start_date`.

#### Example

```json JSON theme={null}
  "gross_additions_by_month": {
    "2015-03": 1,
    "2015-04": 1,
    ...
    "2021-05": 2,
    "2021-06": 2
  }
```

***

### `gross_departures_by_month`

|                 |                                                                |
| --------------- | -------------------------------------------------------------- |
| **Data Type**   | `Object`                                                       |
| **Description** | The total number of profiles that left the company each month. |

#### Field Details

The total number of profiles that left the company each month in the format `YYYY-MM` based on `experience.end_date`.

#### Example

```json JSON theme={null}
  "gross_departures_by_month": {
    "2015-03": 1,
    "2015-04": 1,
    ...
    "2021-05": 2,
    "2021-06": 2
  }
```

## Inferred Revenue

***

### `inferred_revenue`

|                 |                                                         |
| --------------- | ------------------------------------------------------- |
| **Data Type**   | `Enum (String)`                                         |
| **Description** | Company's estimated annual revenue range in US dollars. |

#### Field Details

A company's inferred revenue is an estimated range of its annual revenue in US dollars and can be used as a filter in [Company Search queries](/docs/company-search-api).

The revenue estimate is calculated using a predictive model that factors in details generated for our [Company Insights Fields](#company-insights-fields) (for example, [employee\_count\_by\_month\_by\_role](#employee_count_by_month_by_role)) as well as for other inputs that have been shown to be highly correlative.

The range will be one of our [Canonical Inferred Revenue Ranges](/docs/inferred-revenue-ranges).

#### Example

```json JSON theme={null}
  "inferred_revenue": "$10M-$25M"
```

## Recent Executive Changes

These insights provide details on executives that have joined or left the company in the past three months at the time you make the request.

There is no limit on the number of executives that can be in either list. To determine if someone is an executive, we check if their `experience.title.levels` in the company matches `CXO`, `owner` or `VP`. If no level is specified, then the experience is not counted.

If a start or end date is not given for an executive, then the experience is not counted. If the date only contains a year, the month is assumed to be January.

***

### `recent_exec_departures`

|                 |                                                                                                  |
| --------------- | ------------------------------------------------------------------------------------------------ |
| **Data Type**   | `Array [Object]`                                                                                 |
| **Description** | The profiles of all of CXOs, owners and VPs that have left the company in the last three months. |

#### Field Details

For each executive that has left the company in the past three months, we provide the following information:

| Field                            | Data Type                | Description                                                                                                                             |
| -------------------------------- | ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------- |
| `departed_date`                  | `String (Date: YYYY-MM)` | The month the executive left the company.                                                                                               |
| `pdl_id`                         | `String`                 | The ID of the executive in our [Person Dataset](/docs/fields).                                                                          |
| `job_title`                      | `String`                 | The executive's previous job title at the company.                                                                                      |
| `job_title_role`                 | `Enum (String)`          | The executive's previous job role at the company. This will be one of the [Canonical Job Roles](/docs/job-title-roles).                 |
| `job_title_sub_role`             | `Enum (String)`          | The executive's previous job subrole at the company. This will be one of the [Canonical Job Subroles](/docs/job-title-subroles).        |
| `job_title_class`                | `Enum (String)`          | The expense line item category this executive would fall into. This will be one of the [Canonical Job Classes](/docs/job-title-class) . |
| `job_title_levels`               | `Array [Enum (String)]`  | The executive's previous job levels at the company. This will be in the [Canonical Job Levels](/docs/job-title-levels).                 |
| `new_company_id`                 | `String`                 | The [ID](#id) of the new company the executive joined.                                                                                  |
| `new_company_job_title`          | `String`                 | The executive's current job title at the new company.                                                                                   |
| `new_company_job_title_role`     | `Enum (String)`          | The executive's current job role at the new company. This will be one of the [Canonical Job Roles](/docs/job-title-roles).              |
| `new_company_job_title_sub_role` | `Enum (String)`          | The executive's current job subrole at the new company. This will be one of the [Canonical Job Classes](/docs/job-title-class)  .       |
| `new_company_job_title_class`    | `Enum (String)`          | The executive's current job class at the new company. This will be one of the [Canonical Job Subroles](/docs/job-title-subroles) .      |
| `new_company_job_title_levels`   | `Array [Enum (String)]`  | The executive's current job levels at the new company. This will be in the [Canonical Job Levels](/docs/job-title-levels).              |

#### Example

```json JSON theme={null}
  "recent_exec_departures": [
    {
      "departed_date": "2024-06",
      "pdl_id": "sosPKkiBABHsppzWEYyqgg_0000",
      "job_title": "vice president of revenue operations",
      "job_title_role": "analyst",
      "job_title_sub_role": "revenue_operations",
      "job_title_class": "general_and_administrative",
      "job_title_levels": ["vp"],
      "new_company_id": "ZFOfaDnanwu1hrtXsyfFEw521uw0",
      "new_company_job_title": "senior vice president, revenue operations",
      "new_company_job_title_role": "analyst",
      "new_company_job_title_sub_role": "revenue_operations",
      "new_company_job_title_class": "general_and_administrative",
      "new_company_job_title_levels": ["senior", "vp"]
    },
    ...
  ]
```

***

### `recent_exec_hires`

|                 |                                                                                                    |
| --------------- | -------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Array [Object]`                                                                                   |
| **Description** | The profiles of all of CXOs, owners and VPs that have joined the company in the last three months. |

#### Field Details

For each executive that has joined the company in the past three months, we provide the following information:

| Field                                 | Data Type                | Description                                                                                                                              |
| ------------------------------------- | ------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `joined_date`                         | `String (Date: YYYY-MM)` | The month the executive joined the company.                                                                                              |
| `pdl_id`                              | `String`                 | The ID of the executive in our [Person Dataset](/docs/fields).                                                                           |
| `job_title`                           | `String`                 | The executive's current job title at the company.                                                                                        |
| `job_title_role`                      | `Enum (String)`          | The executive's current job role at the company. This will be one of the [Canonical Job Roles](/docs/job-title-roles).                   |
| `job_title_sub_role`                  | `Enum (String)`          | The executive's current job subrole at the company. This will be one of the [Canonical Job Subroles](/docs/job-title-subroles).          |
| `job_title_class`                     | `Enum (String)`          | The expense line item category this executive would fall into. This will be one of the [Canonical Job Classes](/docs/job-title-class)  . |
| `job_title_levels`                    | `Array [Enum (String)]`  | The executive's current job level at the company. This will be in the [Canonical Job Levels](/docs/job-title-levels).                    |
| `previous_company_id`                 | `String`                 | The [ID](#id) of the company the executive left.                                                                                         |
| `previous_company_job_title`          | `String`                 | The executive's previous job title at the old company.                                                                                   |
| `previous_company_job_title_role`     | `Enum (String)`          | The executive's previous job role at the old company. This will be one of the [Canonical Job Roles](/docs/job-title-roles).              |
| `previous_company_job_title_sub_role` | `Enum (String)`          | The executive's previous job subrole at the old company. This will be one of the [Canonical Job Subroles](/docs/job-title-subroles).     |
| `previous_company_job_title_class`    | `Enum (String)`          | The executive's previous job class at the old company. This will be one of the [Canonical Job Classes](/docs/job-title-class) .          |
| `previous_company_job_title_levels`   | `Array [Enum (String)]`  | The executive's previous job levels at the old company. This will be in the [Canonical Job Levels](/docs/job-title-levels).              |

#### Example

```json JSON theme={null}
"recent_exec_hires": [
  {
    "joined_date": "2024-06",
    "pdl_id": "un-fsOccjHy1yElqJObW6g_0000",
    "job_title": "chief of staff to the chief executive officer and founder",
    "job_title_role": "operations",
    "job_title_sub_role": "aides",
    "job_title_class": "general_and_administrative",
    "job_title_levels": ["owner"],
    "previous_company_id": "RjhjJnYUCiAfXFyxCHLDQQ5opPrK",
    "previous_company_job_title": "business operations manager, reality labs",
    "previous_company_job_title_role": "professional_service",
    "previous_company_job_title_sub_role": "investment_banking",
    "previous_company_job_title_class": null,
    "previous_company_job_title_levels": ["manager"]
  },
    ...
  ]
```

## Top Next and Previous Employers

The top ten next and previous companies employees are broken down by job role.

Companies are listed using their [PDL Company ID](#id).

The first list of companies will be under the `"all"` key. This represents the top 10 companies for any role.

The roles are based on the employee’s role at the company queried. Each role listed in the break down will come from the [Canonical Job Roles](/docs/job-title-roles).

If no start date is given or no role exists, then the experience is not counted.

If there are fewer than ten next/previous employers for a role, it will return as many as there are.

***

### `top_next_employers`

|                 |                                                                                                        |
| --------------- | ------------------------------------------------------------------------------------------------------ |
| **Data Type**   | `Object`                                                                                               |
| **Description** | The top ten companies employees moved to, and how many employees moved there, across all time periods. |

#### Field Details

This field uses `experience.title.role` and `experience.start_date` to find the top next employers. Companies are ranked by the number of previous employees currently employed there.

A company is considered to be a ""next employer"" if the employee has a start date after their start date for the company being queried.

This field is functionally identical to the legacy `top_next_employers_by_role field`, but adds a displayable company name to the response structure.

#### Example

```json JSON theme={null}
"top_next_employers": {
  "finance": [
    {
      "id": "3kgY1DOS3BewEUBVRyl5Lg3tl13v",
      "count": 1,
      "display_name": "Essex Property Trust"
    },
    {
      "id": "OCuR0U1nT6kt66YfnUVKlQaeEYUr",
      "count": 1,
      "display_name": "Green Street"
    }
  ],
  "education": [
    {
      "id": "69IOeBijO7bNzClSGs6bxg4Dt7Ge",
      "count": 1,
      "display_name": "DoorDash"
    }
  ],
  "all": [
    {
      "id": "gbzAHmeUyu5rJyy4eUrPPgtM5jdC",
      "count": 5,
      "display_name": "Five by Five"
    },
    {
      "id": "Dn0GAueIRsYzwepbYEGIAQVi7Qyl",
      "count": 3,
      "display_name": "Anaconda"
    },
    ...
  ]
...
}

```

***

### `top_next_employers_12_month`

|                 |                                                                                       |
| --------------- | ------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                              |
| **Description** | The top ten next employers, counting only employee changes within the last 12 months. |

#### Field Details

This field modifies the top\_next\_employers field, with a filter to only count for employees with job changes that have occurred within the last 12 months

#### Example

```json JSON theme={null}
"top_next_employers_12_month": {
  "education": [
    {
      "id": "69IOeBijO7bNzClSGs6bxg4Dt7Ge",
      "count": 1,
      "display_name": "DoorDash"
    }
  ],
  "all": [
    {
      "id": "gbzAHmeUyu5rJyy4eUrPPgtM5jdC",
      "count": 4,
      "display_name": "Five by Five"
    },
    {
      "id": "Dn0GAueIRsYzwepbYEGIAQVi7Qyl",
      "count": 2,
      "display_name": "Anaconda"
    },
    ...
  ]
...
}

```

***

### `top_next_employers_by_role`

> ⚠️ Deprecated Field
>
> As of April 2025, the `top_next_employer_by_role` field is deprecated and no longer recommended for use. It will be fully replaced in July 2025 (v31.0) by the new [`top_next_employers`](#top_next_employers) field which is now available in beta. We encourage all users to transition to this new field before the final sunset in July.
>
> For more information please see our [April 2025 Release Notes (v30.0)](/changelog/april-2025-release-notes-v300).

|                 |                                                                              |
| --------------- | ---------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                     |
| **Description** | The top ten companies employees moved to and how many employees moved there. |

#### Field Details

This insight uses `experience.title.role` and `experience.start_date` to find the top next employers. Companies are ranked by the number of previous employees currently employed there.

A company is considered to be a "next employer" if the employee has a start date after their start date for the company being queried.

#### Example

```json JSON theme={null}
  "top_next_employers_by_role": {
    "all": {
      "aKCIYBNF9ey6o5CjHCCO4goHYKlf" : 573,
      "RjhjJnYUCiAfXFyxCHLDQQ5opPrK" : 498,
      ...
    },
    "finance": {
      "RZOFiRjw26VpLObnwmYXGgRyn3aW" : 294,
      "BWiTKOBgRTsSttn62R7EBQvww4gF" : 112,
      ...
    },
    ...
  }
```

***

### `top_previous_employers`

|                 |                                                                                                                                                           |
| --------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                                                                                                  |
| **Description** | The top ten previous companies employees worked for previously, and how many current employees were previously employed by them, across all time periods. |

#### Field Details

This field uses `experience.title.role` and `experience.start_date` to find the top previous employers. Companies are ranked by the number of current employees previously employed there.

A company is considered to be a "previous employer" if the employee has a start date before their start date for the company being queried.

This field is functionally identical to the legacy `top_previous_employers_by_role field`, but adds a displayable company name to the response structure."

#### Example

```json JSON theme={null}
"top_previous_employers": {
  "finance": [
    {
      "id": "7L0SglhytLJVj2JOx3PqVgDa2lnM",
      "count": 1,
      "display_name": "MineralTree, Inc."
    },
    {
      "id": "HKCBzjcdUhVPHCmb246CSAYwkTC1",
      "count": 1,
      "display_name": "Center for Effective Government"
    },
    {
      "id": "Pt8QqdHiI5swPLyB4kwkWAnYh66C",
      "count": 1,
      "display_name": "University of Massachusetts Dartmouth"
    }
  ],
  "education": [
    {
      "id": "CKHJ5P60N4XW4oZXB8BdmgKL8vvO",
      "count": 1,
      "display_name": "US Army"
    },
    {
      "id": "DCD55P9HCbJ6EkJhEdPp0AFqPzf3",
      "count": 1,
      "display_name": "Oracle"
    }
  ],
  "all": [
    {
      "id": "aubMfPvUgxL09C7OTtPqqQFVuAR9",
      "count": 11,
      "display_name": "Pipl"
    },
    {
      "id": "Cw9vt7WFFRbhLDnoCeRbswn15Qhi",
      "count": 6,
      "display_name": "Intel Corporation"
    },
    ...
  ]
...
}

```

***

### `top_previous_employers_12_month`

|                 |                                                                                           |
| --------------- | ----------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                                  |
| **Description** | The top ten previous employers, counting only employee changes within the last 12 months. |

#### Field Details

This field modifies the `top_previous_employers` field, with a filter to only count for employees with job changes that have occurred within the last 12 months

#### Example

```json JSON theme={null}
"top_previous_employers_12_month": {
  "education": [
    {
      "id": "DCD55P9HCbJ6EkJhEdPp0AFqPzf3",
      "count": 1,
      "display_name": "Oracle"
    }
  ],
  "all": [
    {
      "id": "aubMfPvUgxL09C7OTtPqqQFVuAR9",
      "count": 3,
      "display_name": "Pipl"
    },
    {
      "id": "Cw9vt7WFFRbhLDnoCeRbswn15Qhi",
      "count": 2,
      "display_name": "Intel Corporation"
    },
    ...
  ]
...
}

```

***

### `top_previous_employers_by_role`

> ⚠️ Deprecated Field
>
> As of April 2025, the `top_previous_employer_by_role` field is deprecated and no longer recommended for use. It will be fully replaced in July 2025 (v31.0) by the new [`top_previous_employers`](#top_previous_employers) field which is now available in beta. We encourage all users to transition to this new field before the final sunset in July.
>
> For more information please see our [April 2025 Release Notes (v30.0)](/changelog/april-2025-release-notes-v300).

|                 |                                                                                                                      |
| --------------- | -------------------------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                                                             |
| **Description** | The top ten previous companies employees worked for and how many current employees were previously employed by them. |

#### Field Details

This insight uses `experience.title.role` and `experience.start_date` to find the top previous employers. Companies are ranked by the number of current employees previously employed there.

A company is considered to be a "previous employer" if the employee has a start date before their start date for the company being queried.

#### Example

```json JSON theme={null}
  "top_previous_employers_by_role": {
    "all": {
      "aKCIYBNF9ey6o5CjHCCO4goHYKlf" : 573,
      "RjhjJnYUCiAfXFyxCHLDQQ5opPrK" : 498,
      ...
    },
    "finance": {
      "RZOFiRjw26VpLObnwmYXGgRyn3aW" : 294,
      "BWiTKOBgRTsSttn62R7EBQvww4gF" : 112,
      ...
    },
    ...
  }
```

## Top US Metros

***

### `top_us_employee_metros`

|                 |                                                  |
| --------------- | ------------------------------------------------ |
| **Data Type**   | `Object`                                         |
| **Description** | The top ten US metros where employees are based. |

#### Field Details

This insight contains the top ten US metros for the company, ordered by the current headcount at each location. For each metro, we also provide the current headcount and the growth rate in that metro over the last twelve months.

Each metro listed is one of our [Canonical Metros](/docs/location-metros).

To determine the headcount at each location, we use our Person Data to find the location where each current employee works. If an employee does not have location data or they are not based in the US, they are not included in the count.

| Field                  | Data Type       | Description                                                                                                         |
| ---------------------- | --------------- | ------------------------------------------------------------------------------------------------------------------- |
| `current_headcount`    | `Integer (> 0)` | The number of employees in the metro.                                                                               |
| `12_month_growth_rate` | `Float`         | The [growth rate](#employee_growth_rate) in the metro over the last twelve months, precise to fourth decimal place. |

#### Example

```json JSON theme={null}
  "top_us_employee_metros": {
    "san francisco, california, united states" : {
      "current_headcount" : 1207,
      "12_month_growth_rate" : .0040
    },
    "austin, texas, united states" : {
      "current_headcount" : 532,
      "12_month_growth_rate" : .0900
    },
    ...
  }
```

***

# Premium Company Fields

These high-value fields are available through our premium offerings.

## Premium Company Information

***

### `linkedin_follower_count`

|                 |                                                          |
| --------------- | -------------------------------------------------------- |
| **Data Type**   | `Integer (>= 0)`                                         |
| **Description** | The number of followers on a company’s LinkedIn profile. |

#### Field Details

The number of followers on a company’s LinkedIn profile.

#### Example

```Text JSON theme={null}
   "linkedin_follower_count": 5880
```

## Funding Details

***

### `funding_details`

|                 |                                                                                     |
| --------------- | ----------------------------------------------------------------------------------- |
| **Data Type**   | `Array [Object]`                                                                    |
| **Description** | List of all funding events associated with the company, with corresponding details. |

#### Field Details

Each publicly disclosed funding event will be added to the `funding_details` list as an Object with the following fields:

| Field                   | Data Type                                 | Description                                                                                                   |
| ----------------------- | ----------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| `funding_round_date`    | [`String (Date)`](/docs/data-types#dates) | The publicly disclosed date of the closing of the financing event.                                            |
| `funding_raised`        | `Float (> 0)`                             | The total amount raised during the funding event.                                                             |
| `funding_currency`      | `Enum (String)`                           | The currency code for the `funding_raised` value. Currently, this will always be `usd`.                       |
| `funding_type`          | `Enum (String)`                           | The funding stage of the funding event. Must be one of our [Canonical Funding Rounds](/docs/funding-rounds).  |
| `investing_companies`   | `Array [String]`                          | The [PDL Company IDs](/docs/company-schema#id) of the investing companies participating in the funding event. |
| `investing_individuals` | `Array [String (Titlecase)]`              | The names of any other investing individuals participating in the funding event.                              |

#### Example

```json JSON theme={null}
  "funding_details": [
    {
      "funding_round_date": "2021-11-16",
      "funding_raised": 45000000.0,
      "funding_currency": "usd",
      "funding_type": "series_b",
      "investing_companies": [
        "UHKkwjzET0f4c2FLBt5BOgB7eZH9",
        "s5O9wCcVnokBzzvX4TQwEwg07z1L"
      ],
      "investing_individuals": [
        "Guillaume \"G\" Cabane"
      ]
    },
    ...
  ]
```

## Parents and Subsidiaries

These insights provide the [company IDs](#id) of the queried company's parent and subsidiary companies.

***

### `all_subsidiaries`

|                 |                                                               |
| --------------- | ------------------------------------------------------------- |
| **Data Type**   | `Array [String]`                                              |
| **Description** | The [IDs](#id) of every company owned by the queried company. |

#### Field Details

The subsidiary company values will be the [ID](#id) of the company. If no subsidiaries are found, the value will be `null`.

#### Example

```json JSON theme={null}
  "all_subsidiaries" : [
    "HwrPqD6yDTnKmmPQFCgIeQ5hOn8j",
    "xhI4e4JvjGZF4SprW5hhCgmLfVjB",
    "niEc7rpuQ1GXwpuDPeeN2QWYggDC",
    "2BrnzFlEfHtRXJUakLCQYQuO0JnJ",
    "uBF8GihqobELnphsfR9ppwQbM9x7",
    "N7iFUv1vUYWF8t0JXHmL5gvFy4XE",
    "97JIBSIC059vdTevziAFJA7qSRNZ",
    "amtMwZGXmNDYoqBCSQBXQAxXVeWV"
  ]
```

***

### `direct_subsidiaries`

|                 |                                                                        |
| --------------- | ---------------------------------------------------------------------- |
| **Data Type**   | `Array [String]`                                                       |
| **Description** | The [IDs](#id) of each company that the queried company directly owns. |

#### Field Details

The subsidiary company values will be the [ID](#id) of the company. If no subsidiaries are found, the value will be `null`.

#### Example

```json JSON theme={null}
  "direct_subsidiaries" : [
    "HwrPqD6yDTnKmmPQFCgIeQ5hOn8j",
    "2BrnzFlEfHtRXJUakLCQYQuO0JnJ",
    "uBF8GihqobELnphsfR9ppwQbM9x7",
    "N7iFUv1vUYWF8t0JXHmL5gvFy4XE",
    "97JIBSIC059vdTevziAFJA7qSRNZ",
    "amtMwZGXmNDYoqBCSQBXQAxXVeWV"
  ]
```

***

### `immediate_parent`

|                 |                                                                      |
| --------------- | -------------------------------------------------------------------- |
| **Data Type**   | `String`                                                             |
| **Description** | The [ID](#id) of the company that directly owns the queried company. |

#### Field Details

The parent company value will be the [ID](#id) of the company. If no parents are found, the value will be `null`.

#### Example

```json JSON theme={null}
  "immediate_parent": "amtMwZGXmNDYoqBCSQBXQAxXVeWV"
```

***

### `ultimate_parent`

|                 |                                                                                    |
| --------------- | ---------------------------------------------------------------------------------- |
| **Data Type**   | `String`                                                                           |
| **Description** | The [ID](#id) of the ultimate organizational entity that owns the queried company. |

#### Field Details

The parent company value will be the [ID](#id) of the company. If no parents are found, the value will be `null`.

#### Example

```json JSON theme={null}
  "ultimate_parent": "0XQ1XCKrHIFF3H6tBVRdzAIknJNS"
```

***

### `ultimate_parent_ticker`

|                 |                                                                                           |
| --------------- | ----------------------------------------------------------------------------------------- |
| **Data Type**   | `String`                                                                                  |
| **Description** | Stock symbol of the company's ultimate parent (only for subsidiaries of public companies) |

#### Field Details

The `ultimate_parent_ticker` field will be populated for records where the company is a subsidiary of a public company. These companies will also have a [`type`](/docs/company-schema#type) value of `public_subsidiary` following the v28.0 release in October 2024.

#### Example

```json JSON theme={null}
  "ultimate_parent_ticker": "CRM",
```

***

### `ultimate_parent_mic_exchange`

|                 |                                                                                                                                       |
| --------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| **Data Type**   | `String`                                                                                                                              |
| **Description** | MIC exchange code that corresponds to the stock exchange of the company's ultimate parent (only for subsidiaries of public companies) |

#### Field Details

The `ultimate_parent_mic_exchange` field will be populated for records where the company is a subsidiary of a public company. These companies will also have a [`type`](/docs/company-schema#type) value of `public_subsidiary` following the v28.0 release in October 2024.

#### Example

```json JSON theme={null}
  "ultimate_parent_mic_exchange": "XNYS"
```

## Affiliated Entities

***

### `affiliated_entities`

|                 |                                                               |
| --------------- | ------------------------------------------------------------- |
| **Data Type**   | `Object`                                                      |
| **Description** | An object containing information on related company profiles. |

#### Field Details

| Field                    | Data Type        | Description                                                                                                                                                                                                                            |
| :----------------------- | :--------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `affiliated_id`          | `String`         | PDL Company ID of the affiliated company record.                                                                                                                                                                                       |
| `display_name`           | `String`         | The [`display_name`](#display_name)  of the affiliated company record.                                                                                                                                                                 |
| `employee_count`         | `Integer (>= 0)` | The current [`employee_count`](#employee_count)  of the affiliated company record                                                                                                                                                      |
| `relationship`           | `Enum (String)`  | Categorization of the relationship type to the affiliated company record. The value of this field will be one of our canonical [Relationship Types](/docs/relationship_types)                                                          |
| `relationship_catalyst`  | `Enum (String)`  | **Alpha Field** - Categorization of the event that formed the relationship to the affiliated company record. The value of this field will be one of our canonical [Relationship Catalysts](/docs/relationship_catalysts)               |
| `relationship_status`    | `Enum (String)`  | **Alpha Field** - Whether the relationship is active, pending, or inactive. The value of this field will be one of our canonical [Relationship Statuses](/docs/relationship_status).                                                   |
| `start_date`             | `String (Date)`  | **Alpha Field** - Date when the affiliated company became related. For mergers or acquisitions, this will be the date that the transaction is closed (when that information is available); otherwise, this will be the date announced. |
| `end_date`               | `String (Date)`  | **Alpha Field** - When applicable, the date when the the affiliated company was divested or otherwise no longer affiliated.                                                                                                            |
| `relationship_citations` | `Array [String]` | **Alpha Field** - List of URL links to news articles, press releases, or company webpages that describe the business relationship.                                                                                                     |

<Info>
  The Parent Subsidiary Details fields are currently in alpha (marked as **Alpha Field** above). They are available only to participating alpha customers and are not included in standard company data packages. To learn more, please reach out to your customer account team.
</Info>

#### Example

```json JSON theme={null}
  "affiliated_entities": [
    {
      "affiliated_id": "es7LgyqRNsFDLcWXC3WAvACHVh9g",
      "display_name": "Salesforce",
      "relationship": "ultimate_parent",
      "employee_count": 77118
    }
  ]
```

<br />

## Office Insights

***

### `locations`

|                 |                                                                                                       |
| --------------- | ----------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                                              |
| **Description** | An object containing increasingly granular information about all locations associated to the company. |

#### Field Details

In addition to a company's location of its Headquarters (HQ) we provide a list of known offices. As of v31.1 (August 2025 Release) we are also tagging offices as active or inactive and the date it was first and last observed in our data sources:

| Field        | Data Type | Description                                                                                         |
| :----------- | :-------- | :-------------------------------------------------------------------------------------------------- |
| `first_seen` | `String`  | The date that this location was first observed in association with the company record.              |
| `last_seen`  | `String`  | The date that this location was last observed in association with the company record.               |
| `is_active`  | `Boolean` | Denotes whether this location was active (“true”) or inactive (“false”) as of the last observation. |

For more information on our standard location fields, see [Data Formatting: Locations](/docs/data-formatting#locations).

#### Example

```json JSON theme={null}
"locations": [
  {
    "name": "palo alto, california, united states",
    "locality": "palo alto",
    "region": "california",
    "metro": "san jose, california",
    "country": "united states",
    "continent": "north america",
    "street_address": "1455 3rd street",
    "address_line_2": null,
    "postal_code": "94304",
    "geo": "37.44,-122.14",
    "first_seen": "2022-06-11",
    "last_seen": "2024-03-12",
    "is_primary": false,
    "is_active": true
  },
  {
    "name": "san francisco, california, united states",
    "locality": "san francisco",
    "region": "california",
    "metro": "san francisco, california",
    "country": "united states",
    "continent": "north america",
    "street_address": "1455 3rd street",
    "address_line_2": null,
    "postal_code": "94108",
    "geo": "37.77,-122.41",
    "first_seen": "2022-06-11",
    "last_seen": "2024-03-12",
    "is_primary": false,
    "is_active": true
  },
  {
    "name": "san francisco, california, united states",
    "locality": "san francisco",
    "region": "california",
    "metro": "san francisco, california",
    "country": "united states",
    "continent": "north america",
    "street_address": "1725 3rd street",
    "address_line_2": null,
    "postal_code": "94158",
    "geo": "37.77,-122.41",
    "first_seen": "2022-06-11",
    "last_seen": "2024-03-12",
    "is_primary": true,
    "is_active": true
  },

```

<br />

***

### `num_active_locations`

|                 |                                                                 |
| --------------- | --------------------------------------------------------------- |
| **Data Type**   | `Integer > 0`                                                   |
| **Description** | Count of all active locations associated to the company record. |

#### Example

```json JSON theme={null}
"num_active_locations": 20
```

<br />

***

### `num_total_locations`

|                 |                                                            |
| --------------- | ---------------------------------------------------------- |
| **Data Type**   | `Integer > 0`                                              |
| **Description** | Count of all locations associated with the company record. |

#### Example

```json JSON theme={null}
"num_total_locations": 30
```

## Job Posting Insights

These fields provide an aggregate summary of the open and filled job postings at a company.

***

### `active_job_postings`

|                 |                                                                                               |
| --------------- | --------------------------------------------------------------------------------------------- |
| **Data Type**   | `Integer`                                                                                     |
| **Description** | Count of distinct, active job postings that existed over the course of the most recent month. |

#### Example

```json JSON theme={null}
"active_job_postings": 4
```

***

### `deactivated_job_postings`

|                 |                                                                                                               |
| --------------- | ------------------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Integer`                                                                                                     |
| **Description** | Count of distinct job postings that were removed/no longer captured over the course of the most recent month. |

#### Example

```json JSON theme={null}
"deactivated_job_postings": 3
```

***

### `active_job_postings_by_role`

|                 |                                                                                                                              |
| --------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                                                                     |
| **Description** | Count of distinct, active job postings that existed over the course of the most recent month, categorized by Job Title Role. |

#### Example

```json JSON theme={null}
"active_job_postings_by_role": {
    "support": 1,
    "product": 1,
    "engineering": 2
}
```

***

### `deactivated_job_postings_by_role`

|                 |                                                                                                                                                      |
| --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                                                                                             |
| **Description** | Count of distinct, active job postings that were removed/no longer captured over the course of the most recent month, categorized by Job Title Role. |

#### Example

```json JSON theme={null}
"deactivated_job_postings_by_role": {
    "other_uncategorized": 1,
    "product": 1,
    "engineering": 1
}
```

***

### `active_job_postings_by_class`

|                 |                                                                                                                               |
| --------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                                                                      |
| **Description** | Count of distinct, active job postings that existed over the course of the most recent month, categorized by Job Title Class. |

#### Example

```json JSON theme={null}
"active_job_postings_by_class": {
    "general_and_administrative": 1,
    "research_and_development": 2,
    "services": 1
}
```

***

### `deactivated_job_postings_by_class`

|                 |                                                                                                                               |
| --------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                                                                      |
| **Description** | Count of distinct, active job postings that existed over the course of the most recent month, categorized by Job Title Class. |

#### Example

```json JSON theme={null}
"deactivated_job_postings_by_class": {
    "other_uncategorized": 1,
    "general_and_administrative": 1,
    "research_and_development": 2
}
```

***

### `active_job_postings_by_sub_role`

|                 |                                                                                                                                 |
| --------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                                                                        |
| **Description** | Count of distinct, active job postings that existed over the course of the most recent month, categorized by Job Title Subrole. |

#### Example

```json JSON theme={null}
"active_job_postings_by_sub_role": {
  "other_uncategorized": 1,
  "product_management" : 1,
  "data_engineering" : 2
}
```

***

### `deactivated_job_postings_by_sub_role`

|                 |                                                                                                                                                         |
| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                                                                                                |
| **Description** | Count of distinct, active job postings that were removed/no longer captured over the course of the most recent month, categorized by Job Title Subrole. |

#### Example

```json JSON theme={null}
"deactivated_job_postings_by_sub_role": {
  "other_uncategorized": 1,
  "product_management" : 1,
  "data_engineering" : 1
}
```

***

### `active_job_postings_by_country`

|                 |                                                                                                                                              |
| --------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                                                                                     |
| **Description** | Count of distinct, active job postings that existed over the course of the most recent month, categorized by the Country of the job posting. |

#### Example

```json JSON theme={null}
"active_job_postings_by_country": {
    "other_uncategorized": 1,
    "remote_location": 8,
    "brazil": 36,
    "united states": 331,
    "canada": 84,
    "netherlands": 2
}
```

***

### `active_job_postings_by_metro`

|                 |                                                                                                                                            |
| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| **Data Type**   | `Object`                                                                                                                                   |
| **Description** | Count of distinct, active job postings that existed over the course of the most recent month, categorized by the Metro of the job posting. |

#### Example

```json JSON theme={null}
"active_job_postings_by_metro": {
    "other_uncategorized": 142,
    "remote_location": 8,
    "denver, colorado, united states": 1,
    "san francisco, california, united states": 127,
    "seattle, washington, united states": 35,
    "atlanta, georgia, united states": 1,
    "new york, new york, united states": 100,
    "salt lake city, utah, united states": 54,
    "austin, texas, united states": 1,
    "san diego, california, united states": 1
}
```

***

### `active_job_postings_by_month`

|                 |                                                                                    |
| --------------- | ---------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                           |
| **Description** | Count of distinct, active job postings that existed over the course of each month. |

#### Example

```json JSON theme={null}
"active_job_postings_by_month": {
    "2024-10": 2,
    "2024-11": 3,
    "2024-12": 4,
    "2025-01": 7,
    "2025-02": 4
}
```

***

### `deactivated_job_postings_by_month`

|                 |                                                                                                            |
| --------------- | ---------------------------------------------------------------------------------------------------------- |
| **Data Type**   | `Object`                                                                                                   |
| **Description** | Count of distinct, active job postings that were removed/no longer captured over the course of each month. |

#### Example

```json JSON theme={null}
"deactivated_job_postings_by_month": {
    "2024-12": 1,
    "2025-01": 0,
    "2025-02": 4
}
```

***

# Technology Data Fields

These beta fields represent the technologies likely in use by a company, along with information on the underlying signals of that use.

***

### `technologies_used`

|                 |                                                                                                                                |
| --------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| **Data Type**   | `Array [Object]`                                                                                                               |
| **Description** | Fields representing the technologies likely in use by a company, along with information on the underlying signals of that use. |

#### Field Details

Each technology associated with the company will be added to the `technologies_used` list as an Object with the following fields:

| Field                      | Data Type | Description                                                                                                                                                                                                                                                                              |
| -------------------------- | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `product_id`               | `String`  | A unique, hashed value that represents a specific technology.                                                                                                                                                                                                                            |
| `name`                     | `String`  | The canonical name for the represented technology.                                                                                                                                                                                                                                       |
| `num_job_posting_mentions` | `Integer` | The total number of mentions of the technology in company job postings. Specifically, this represents the number of times that the technology, including any associated aliases or alternative names, was mentioned in a job posting (job title and/or role description) of the company. |
| `num_resume_mentions`      | `Integer` | The total number of mentions of the technology in resumes. Specifically, this represents the number of times that the technology, including any associated aliases or alternative names, was mentioned in a role (job title or experience summary) specific to the company.              |

#### Example

```json JSON theme={null}
"technologies_used": [
  {
    "product_id": "aV8mYR0sZFCrWvdkco07nwi7tGTt",
    "name": "Databricks",
    "num_job_posting_mentions": 11,
    "num_resume_mentions": 4
  },
  {
    "product_id": "ZNJNyjIICYIBrhIOyxG5iQfQvzLt",
    "name": "Apache Spark",
    "num_job_posting_mentions": 6,
    "num_resume_mentions": 5
  }
]
```
