Skip to content

Methodology

How the numbers on this site are produced, what they mean, and what we refuse to publish. Last updated July 3, 2026.

What we monitor

We continuously monitor publicly visible Upwork job postings and have done so since July 2025. As of July 2026 the corpus holds 1.5 million postings from 588,000 client accounts, growing by roughly 120,000 to 150,000 postings per month. Each posting is observed repeatedly over its life, not captured once, which is what makes outcome analysis possible.

We publish absolute volumes, never coverage percentages. We have not measured what share of all Upwork postings our monitoring captures, so we do not claim one.

Outcome resolution: the four-way taxonomy

Most published Upwork statistics count postings. Ours track what happened to them. Every posting is followed until it reaches a final state:

A posting is resolved once it carries one of these labels. Fill rate = FILLED as a share of resolved postings.

The cohort rule (why our fill rate differs from other published numbers)

Fill rates computed on recent postings are systematically inflated: jobs that hire tend to close within days, while jobs that never hire linger open for weeks before closing or expiring. Measure a young cohort and the fast, successful closures dominate. Our April 2026 cohort, measured today, shows a misleading 55.8% fill rate for exactly this reason.

Our published fill rates therefore use stable cohorts: postings old enough (roughly four months) that outcomes have fully resolved. Current stable-cohort baseline (postings from October 2025 through February 2026, n = 617,336 resolved): 43.9% filled, 41.3% unfilled, 8.7% cancelled, 6.1% expired.

This is also why published Upwork hire rates disagree with each other:

SourcePublished numberWhy it differs
GigUp free dashboard22.8%Single last-month snapshot; most eventual hires have not happened yet at observation time
Vollna 2024 annual report38%Two-year window mixing resolved and unresolved postings, binary filled/not taxonomy
This site43.9%Resolved postings only, from cohorts old enough to have settled

Directionally the sources agree (our category ranking largely matches GigUp’s snapshot, and Vollna also finds translation on top and entry-level postings filling more often). The level differences are cohort methodology.

Client-level metrics

Client attributes (payment verification, lifetime hires, lifetime spend, feedback score) are captured at each observation of each posting. Client-level classifications use the maximum value seen across all observations, so a “zero hires” verdict means zero at every sighting, and postings from the last 14 days are excluded from outcome-dependent cuts so fresh postings are not misclassified as never-hiring.

Time-to-fill

Time-to-fill measures days from posting publication to detected closure, for filled postings. Closure detection runs on a cadence of roughly two hours, so figures are accurate at day granularity. We publish time-to-fill only for cohorts from April 2026 onward; before that date our closure timestamps reflect a retroactive backfill rather than true close times, and we treat them as unusable for duration analysis.

What we deliberately do not publish

Known limitations

Corrections

If you believe a published number is wrong, write to contact@freelancingstats.com. Corrections are noted inline with the original figure struck through, not silently edited.