| Role family | Postings | Median midpoint |
|---|---|---|
| sales | 44 | $160,000 |
| engineering | 27 | $185,000 |
| support / ops | 23 | $150,000 |
| marketing | 16 | $145,000 |
| other | 10 | $156,017 |
| security | 10 | $177,000 |
| product | 8 | $205,000 |
| finance / legal | 8 | $160,000 |
| data / ml | 3 | $185,000 |
| design | 1 | $168,000 |
| Title | Location | Low | High |
|---|---|---|---|
| Head of Sales, ANZ | Sydney, AU | $280,000 | $420,000 |
| Distinguished Engineer, Enterprise Scalability | Boston, MA | $244,000 | $366,000 |
| PIPELINE - L5 Principal Software Engineer | Boston, MA | $244,000 | $366,000 |
| Principal Engineer, Core Infrastructure | Boston, MA | $244,000 | $366,000 |
| Director, Product Management - Channel Infrastructure & Mobile | Boston, MA | $224,000 | $336,000 |
| Senior Lead Software Engineer - Data Platform | Boston, MA | $216,000 | $324,000 |
| Sr. Lead Engineer, Applied AI (Customer Agent) | Boston, MA | $216,000 | $324,000 |
| Sr. Lead Software Engineer | Boston, MA | $216,000 | $324,000 |
| Sr. Staff Engineer, Applied AI (Customer Agent) | Boston, MA | $216,000 | $324,000 |
| Head of Global Compensation | Boston, MA | $200,000 | $300,000 |
| Head of Global Compensation | Denver, CO | $200,000 | $300,000 |
| Senior Lead Product Manager, Enterprise | Boston, MA | $196,000 | $294,000 |
Across 150 postings that state a pay range, the median midpoint is $160,000. The middle 50% sits between $140,000 and $185,000, and the 90th percentile is $221,999. All figures are annualised and converted to USD.
150 of the postings we read from greenhouse carried a range on the day we measured (2026-10-24). The rest did not publish pay at all, so they are not in these numbers.
sales is the largest family in this sample (44 postings, median $160,000). The table above lists every family we saw and the highest individual ranges.
No. This is what the company itself published in its job postings, normalised to a yearly USD range. Real offers vary by level, location and equity, and many postings omit pay entirely.
These 150 rows are part of one CSV covering every company we read: the full dataset (salary-ranges-full.csv) under CC BY 4.0. Or pull it into Python:
pip install https://sjdfi0wjvosdju9.github.io/packages/salaryranges-0.1.1-py3-none-any.whl
import salaryranges
salaryranges.by_company("klaviyo")
If you want the same numbers refreshed on a schedule, including the postings that never publish pay, that is the paid part: ATS Job Feed ($0.0015 per returned job).