Adzuna destination census (WING-333)¶
Measured 2026-08-05/06. Reproducible: sample drawn with fixed seed 20260805.
Question: when we take a listing off the Adzuna API and follow its redirect_url, where does it
actually land — and how often does that end somewhere we can drive?
Method¶
- 1,200 unique listings pulled from the Adzuna API across 25 occupations (24 API calls, paced 2.5 s, well inside the ~25/min free-tier budget).
- Occupations chosen deliberately broad — the tech skew of our direct ATS sources is the thing under test, so a tech-only sample would have begged the question.
- 250 randomly sampled (seed 20260805) and fetched with a real headful browser, one at a time, ~2 s apart, window off-screen. No stealth, no UA/TLS spoofing, no CAPTCHA solving, no proxies.
- 192 usable, 58 errored (23%) — not yet diagnosed. See caveats.
Result 1: the inventory is genuinely non-tech¶
| Category | Listings |
|---|---|
| Logistics & Warehouse | 201 |
| Accounting & Finance | 198 |
| Healthcare & Nursing | 172 |
| Admin | 165 |
| Customer Services | 103 |
| IT | 103 (8.6%) |
| Teaching | 102 |
| Part time | 49 |
IT is 8.6% of 1,200. The other ~91% is the population our direct sources do not reach — and a separate probe found 0 of 22 Adzuna employers had a public Greenhouse or Ashby board (crude slugification, so some false negatives, but the direction is unambiguous).
This is the evidence that Adzuna is complementary, not redundant. It answers the open question behind "we need this part": the breadth is real and it is not obtainable from Greenhouse/Lever/Ashby.
Result 2: most listings pass INTO ad-tech, not to employers¶
| Shape | n=192 |
|---|---|
| Landed off-adzuna | 57.3% |
| Adzuna-hosted details page | 22.4% |
| Interstitial, caught mid-redirect | 20.3% |
| Final host | n |
|---|---|
| adzuna.com | 82 |
| click.appcast.io | 64 |
| jobs.intuit.com | 16 |
| ziprecruiter.com | 13 |
| applicant.careerpilot.jobs | 7 |
| career.io | 4 |
| monster.com | 3 |
The single largest destination is Appcast (click.appcast.io), a programmatic recruitment-ad
exchange — not an employer, not an ATS. So for roughly a third of listings the real chain is
Adzuna → Appcast → ???, with at least one more ad-tech hop we had not seen.
Only 16 of 192 (8%) reached an employer site in one hop. ZERO landed directly on Greenhouse, Lever, iCIMS or Workday.
This corrects an earlier, smaller measurement¶
A 15-listing sample earlier the same night showed ~80% clean pass-through and was written up as "the majority pass straight through." At n=192 that does not hold: the majority pass into intermediaries. The 15-sample was small-sample luck. Recorded rather than quietly replaced, because the error direction matters — it made the path look easier than it is.
And it corrects the one before that¶
An even earlier read, from two hand-picked URLs, concluded "Adzuna always dead-ends at a registration wall." Also wrong: those two happened to be the Adzuna-hosted variety (22.4% of the corpus). The hosted ones do wall; the pass-through ones do not.
What is genuinely useful, and survives all three revisions¶
Adzuna-hosted detail pages carry full JSON-LD JobPosting, pre-auth, no login:
{"@type":"JobPosting","title":"Field Marketing Manager",
"hiringOrganization":{"name":"Erie Home"},
"datePosted":"2026-05-29T00:00:00","validThrough":"2026-08-20T02:30:42",
"employmentType":["FULL_TIME"],"directApply":true,
"description": <4009 chars>}
The API caps description at exactly 500 chars on 100% of listings; the page carries 6–8×
more. That matters beyond convenience: JobFitAnalyzer scores against the description, so fit bands
computed from API text alone are scored on a 500-char snippet and will systematically under-match.
Also measured on the API payload (n=60): salary_is_predicted = 1 on 95% of listings. The
salary is Adzuna's estimate, not the employer's figure. Rendering it as the job's pay would show
users a number no employer stated — an honesty problem in our product regardless of the source.
The Appcast hop — next thing to measure¶
click.appcast.io is a required node in the host taxonomy and was not previously known to us.
Cheap to test: it is a click redirector, so it likely 302s and may not need a browser at all. If it
resolves onward to employer ATSes, the effective reach is much better than the 8% one-hop figure.
Not yet done. Do not assume it resolves.
Caveats (do not launder these away)¶
- 58/250 (23%) errored and are undiagnosed. If those skew toward slow/heavy employer pages, the 8%-reach-an-employer figure is understated. This is a real gap.
- The interstitial "being redirected to X" parser did not fire on this batch; destination names quoted in earlier notes were read manually, not extracted by that code.
- n=192 gives roughly ±7% at 95% confidence. Enough to settle "is pass-through the majority" (it is not), not enough for precise per-host ratios.
- Single country (US), single point in time, one API tier.