Data ethics

What we hold, what we suppress, and what we will not publish — including the cases where the answer costs us a story.

Method version 1.8.0 · Last generated July 29, 2026

Commitments

Suppression floor

No published cell describes fewer than 5 distinct companies. This is a hard floor, not a guideline: a breakdown that cannot clear it is coarsened until it does, or it is not published.

Provenance

Everything on this site is derived from public job advertisements — postings on company applicant-tracking systems and public job boards. Nothing is derived from a customer's account, usage, or queries.

The research corpus and any customer-facing product data are read through different code paths with different credentials. The generator that builds these pages holds a read-only corpus connection and cannot reach customer records at all.

The reads this site is able to perform are enumerated below and are all aggregate- or page-shaped. Single-record lookups are structurally forbidden at the seam and fail the build if added.

Every read this site can perform

  • assert_corpus_fresh
  • collect_trend_aggregates
  • count_corpus_signals
  • count_distinct_sources
  • count_signals_by_company
  • count_signals_by_dimension
  • count_signals_for_pages
  • detect_agency_names
  • fetch_ats_install_base
  • fetch_comparison_sides
  • fetch_signals_by_board
  • fetch_signals_for_page
  • load_page_configs
  • record_page_job_counts

Every field we hold about a posting

This is the complete list — not a summary of it.

  • url
  • company_name
  • posted_at
  • location
  • title
  • salary_raw
  • remote_type
  • yearly_salary_usd
  • salary_estimate_median
  • source
  • industry
  • headcount
  • employer_type

None of these identifies a natural person. We hold no names, email addresses, phone numbers or profiles of individuals, and there is no field in which one could be stored.

See also Method — the sample definition and pre-registered metric definitions.