| Role family | Postings | Median midpoint |
|---|---|---|
| engineering | 19 | $203,500 |
| sales | 15 | $201,000 |
| finance / legal | 4 | $276,535 |
| support / ops | 3 | $128,500 |
| security | 2 | $214,695 |
| data / ml | 2 | $200,070 |
| marketing | 2 | $187,115 |
| design | 2 | $159,812 |
| other | 2 | $151,515 |
| Title | Location | Low | High |
|---|---|---|---|
| Head of Legal | Remote (Canada) | $298,820 | $427,460 |
| Strategic Enterprise Account Executive | Remote (United States) | $350,000 | $350,000 |
| Commercial Legal Counsel | Remote (Canada) | $250,580 | $313,560 |
| Enterprise Account Executive | Remote (San Francisco, California, United St | $250,000 | $300,000 |
| Enterprise Account Executive | Remote (New York, New York, United States) | $250,000 | $300,000 |
| Senior Solutions Engineer, Enterprise | Remote (United States) | $250,000 | $300,000 |
| Software Engineer, Networking (Features) | Remote (Canada) | $242,540 | $302,840 |
| Head of Legal | Remote (United States) | $223,000 | $319,000 |
| Forward Deployed Engineer | Remote (Canada) | $201,000 | $335,000 |
| Software Engineer, AI Enablement | Remote (Canada) | $218,420 | $302,840 |
| Software Engineer, Networking (Dataplane) | Remote (Canada) | $218,420 | $302,840 |
| Software Engineer, Strategic Projects | Remote (Canada) | $218,420 | $302,840 |
Across 51 postings that state a pay range, the median midpoint is $201,000. The middle 50% sits between $172,860 and $245,890, and the 90th percentile is $275,000. All figures are annualised and converted to USD.
51 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.
engineering is the largest family in this sample (19 postings, median $203,500). 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 51 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("tailscale")
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).