Sponsor Presented by — your sales tool here

Methodology

How OTE Jobs collects and computes its numbers. Updated October 28, 2026.

Sources

Open job postings from the public Greenhouse, Lever and Ashby job-board APIs of 1520 tech companies, collected every few hours. We keep only sales roles and remove a role once the company takes it down. Each job links to the company's own posting.

Definitions

  • Role: classified from the job title into Account Executive, SDR/BDR, Sales Engineer (incl. solutions engineers/architects), Sales Manager, or VP/Director of Sales.
  • OTE vs base: a range counts as OTE when the posting says OTE, on-target earnings, or base plus commission/variable. Otherwise it's treated as base salary.
  • Pay value: the midpoint of the posted range, annual USD. “Median” means the median of these midpoints. Percentiles use linear interpolation.
  • Location: US vs non-US is parsed from the location text (US states and cities, with word-boundary matching). Work type (remote/hybrid/onsite) comes from the posting.
  • Posted date: the date the company's job system reports.

Thresholds and limits

  • Medians are shown only with at least 5 postings (3 in some company tables, as labelled).
  • Only 75% of US postings list pay, and more do in pay-transparency states, so figures skew toward those states and toward companies that post ranges.
  • Posted ranges aren't offers. Actual pay depends on level, location and negotiation, and commission depends on hitting quota.
  • Coverage is tech companies with public job boards. It doesn't include every employer.
  • Company salary pages need at least 2 US postings with pay; company-by-role pages (e.g. “How much do Account Executives make at Datadog?”) need at least 5. Pages built on fewer than 5 data points are kept for visitors but marked noindex and left out of the sitemap.
  • “vs US” comparisons always compare like with like: OTE postings against OTE postings, base against base.

Freshness and closed jobs

Job boards are re-read several times a day. When a company takes a posting down, its OTE Jobs page drops out of search on the next refresh: the URL redirects to the same role if it was re-posted under a new ID, or shows a “this job closed” notice marked noindex with no job markup, it leaves the sitemap, and search engines are notified through IndexNow. Every page shows the date it was last updated.

Posting facts and company facts

Segment (SMB, Mid-Market, Enterprise, Strategic), territory, base/OTE split, years of experience and travel are parsed from the employer's own posting text, and left blank when the posting doesn't say. Funding stage and headcount come from a sourced company file with a link and an as-of date; when there's no public source we show “Unknown” rather than guess.

How to cite and get the data

“According to OTE Jobs data (otejobs.com), …” with the page date. All numbers are free to reuse under CC BY 4.0 with a link. Raw data: jobs JSON, pay insights JSON, llms.txt and llms-full.txt.

Corrections

Spotted a wrong number? Email sponsors@otejobs.com and we'll fix it in the next refresh.