TheirStackTheirStack Logo
Log inSign up
DocumentationAPI ReferenceWebhooksDatasetsMCPGuides
DatasetsAccessing your datasets

Options

Job DatasetJob Closed DatasetCompany DatasetTechnographicsBuying Intents

Job Closed Dataset

Expired job postings dataset — same schema as the Jobs dataset with closed_at always populated, partitioned by the day each posting went offline. Use it for historical close-date analysis, CRM enrichment, or warehouse pipelines.

The Job Closed dataset is TheirStack's archive of expired job postings — roles that have been taken down from their original source, whether a company careers page, LinkedIn, Indeed, Greenhouse, or another job board. It shares the same schema as the Jobs dataset, with one key difference: closed_at is always populated, recording the date TheirStack confirmed the posting was no longer live.

Job postings go offline for several reasons: the role was filled, the listing expired on the job board, hiring was paused, or the company restructured. Regardless of the reason, once TheirStack detects the posting is gone, the record lands in this dataset with its confirmed close date.

Common uses for expired job postings data

  • Sales prospecting — a closed "VP of Engineering" or "Head of Sales" posting often means someone just got hired. Reach out while the new hire is still evaluating tools.
  • Competitive intelligence — track when a competitor pulls down senior roles to spot headcount changes before they surface in press releases.
  • Market research — compare open-vs-expired ratios across industries or time periods to measure hiring velocity.
  • Data pipelines — load expired postings into a warehouse to build churn models, CRM enrichment jobs, or recruiting dashboards.

Files are partitioned by closed_at date (the day TheirStack detected the posting was offline), in Parquet format. Daily and hourly partitions are available.

ColumnTypeDescriptionFill Rate
id
integer

Unique identifier for the job

100.00%
url
str

URL of the job posting. If we have a URL where the job board redirects to, where the job is originally posted, this URL will be returned here. Otherwise, the value of this field will be the same as the value of the source_url field.

100.00%
job_title
str

Title of the job position

100.00%
date_posted
date

Date when the job was posted

100.00%
company_name
str

Name of the company offering the job

100.00%
description
str

Full description of the job

100.00%
location
str

Location of the job

91.48%
short_location
str

Short version of the job location

91.48%
long_location
str

Long version of the job location

91.48%
state_code
str

State code of the job location

74.44%
latitude
float

Latitude of the job location

73.34%
longitude
float

Longitude of the job location

73.34%
postal_code
str

Postal code of the job location

0.06%
remote
boolean

Whether the job is remote

4.30%
hybrid
boolean

Whether the job is hybrid (partially remote)

3.10%
salary_string
str

Salary information as a string

100.00%
min_annual_salary
float

Minimum annual salary

33.53%
min_annual_salary_usd
float

Minimum annual salary in USD

33.53%
max_annual_salary
float

Maximum annual salary

33.59%
max_annual_salary_usd
float

Maximum annual salary in USD

33.59%
avg_annual_salary_usd
float

Average annual salary in USD

33.52%
salary_currency
str

Currency of the salary

33.56%
country_codes
array

List of country codes where the job is available

96.69%
discovered_at
datetime

Timestamp when the job was discovered by TheirStack. Will be equal or greater than the value of the date_posted field.

100.00%
closed_at
date

Date when TheirStack detected this job was closed by the source. Always populated in this dataset — this is the field the dataset is partitioned by.

100.00%
source_url
str

URL of the job board where the job was found

100.00%
seniority
str

Seniority level of the job position. One of the following values: c_level, staff, senior, mid_level, junior

100.00%
hiring_team
json

Information about the hiring team

0.00%
company.id
str

Unique identifier for the company

100.00%
company.name
str

Name of the company

100.00%
company.domain
str

Company website domain

31.13%
company.possible_domains
array

List of possible company domains

31.13%
company.iso2
str

Two-letter country code where the company is based

27.74%
company.industry_id
integer

Industry classification ID

31.24%
company.employee_count
integer

Number of employees at the company

33.12%
company.annual_revenue_usd
float

Annual revenue in USD

18.42%
company.total_funding_usd
float

Total funding raised in USD

4.13%
company.funding_stage
str

Current funding stage (e.g., Series A, Series B)

12.29%
company.last_funding_round_date
date

Date of the most recent funding round

13.71%
company.founded_year
integer

Year the company was founded

19.15%
company.yc_batch
str

Y Combinator batch (if applicable)

0.35%
company.linkedin_id
str

LinkedIn company ID

27.58%
company.linkedin_url
str

LinkedIn company URL

27.93%
company.apollo_id
str

Apollo.io company ID

19.43%
company.is_recruiting_agency
boolean

Whether the company is a recruiting agency

0.55%
company.is_consulting_agency
boolean

Whether the company is a consulting agency

0.00%
company.logo_url
str

URL of the company logo

62.15%
company.annual_revenue_usd_readable
str

Human-readable annual revenue (e.g., "$1.5M")

18.42%
company.last_funding_round_amount_readable
str

Human-readable last funding amount

3.20%
company.long_description
str

Detailed description of the company

100.00%
company.seo_description
str

SEO-optimized company description

28.45%
company.city
str

City where the company is headquartered

27.35%
company.postal_code
str

Postal code of company headquarters

25.61%
company.alexa_ranking
integer

Alexa ranking of the company website

15.79%
company.publicly_traded_symbol
str

Stock ticker symbol (if publicly traded)

10.61%
company.publicly_traded_exchange
str

Stock exchange where the company is listed

10.72%
company.investors
str

List of company investors

100.00%
company.num_jobs
integer

Total number of jobs posted by this company

100.00%
company.num_jobs_last_30_days
integer

Number of jobs posted in the last 30 days

100.00%
keyword_slugs
array

List of technology slugs of technologies mentioned in the job title, description, or URL

99.99%
locations
array

List of Location objects, as described here

73.33%
employment_statuses
array

Array containing one or more employment status values. Possible values: temporary, full_time, internship, contract, part_time, other, apprenticeship, seasonal, volunteer, co_founder

85.57%
workplace_types
array

Array containing one or more workplace type values. Possible values: on_site, hybrid, remote

7.39%

How is this guide?

Last updated on

Job Dataset

Explore all 60 job dataset fields including column names, data types, descriptions, and fill rates showing data completeness metrics for each field

Company Dataset

Learn about the dictionary of the Companies Dataset — explore all available fields, data types, and descriptions for company records including domain, industry, size, and location data.

On this page

Common uses for expired job postings data