Matching clients with the best workers for their shifts
Reducing the friction for clients to trust and accept the right workers — and keeping their shifts filled when a worker cancels last minute
- Role
- Product Designer, Finding & Matching
- Duration
- 4.5 years, ongoing
- Platform
- Client web (B2B)
- Core metric
- Filled shifts & worked hours
My role
Product Designer in the Finding and Matching team for the last 4.5 years
Temper is a job marketplace connecting businesses with flexible workers across NL and UK. I own the design for the flows that get workers matched with companies, driving the platform’s core metric: filled shifts and worked hours.
Temper has two sides — a mobile app for workers and a web platform for clients — and I design for both. This case is about the client side: how clients review, choose and accept workers, and what happens when a shift isn’t filled yet.
The worker side is its own case: Temper — Worker AppChallenge
How might we help clients trust and commit to workers they don’t know yet — and keep their shifts filled?
Clients on Temper get applicants, but most of them are strangers. Without proof of who is good, clients hesitate, shifts stay open, and workers who would have done a great job never get the chance.
Every initiative on this side laddered up to three outcomes: lifting the acceptance rate so clients respond to good applicants instead of leaving shifts empty, filling more shifts by turning waiting into inviting and automating the cases where clients are too late to react, and growing flexpool usage to turn one-off shifts into recurring matches. What follows is how we chased those goals — the problems we solved and the features I designed along the way.
01
Increasing the acceptance rate
Clients responding to good applicants.
02
Increasing the number of filled shifts
Through invites and automation.
03
Increasing flexpool usage
Recurring matches & worked hours.
Recommending workers to reduce clients’ decision paralysis when hiring unknown workers
User problem
Because the platform lacks sufficient proof for first-time applicants, clients suffer from decision paralysis when reviewing unknown workers.
Instead of taking a risk on unfamiliar (but potentially top-tier) talent, they default to leaving shifts completely empty — resulting in lost platform revenue and a frustrating worker experience.
The trust hypothesis — solving the “new worker penalty”
If we highlight Best Match workers with platform data (good applicants),
Then clients will accept a higher percentage of first-time applicants,
Because the badge bridges the trust deficit that currently causes them to leave shifts empty.
The Best Match badge marks applicants with relevant work experience, high ratings and a short distance to the shift — the signals clients otherwise only get from workers they already know.
Outcome — the Best Match (mostly) works
Test cohort, 296 acceptsAcceptance rate
15.9%
Best-match applicants, vs 4.9% for non-best matches
Accept likelihood
3.2×
Clients prefer the recommended workers
Fill rate
+15pp
75.8% with a best match, 60.4% without
Share of accepts
62%
Of all accepts where a best match was shown
What worked
Clients prefer the recommended workers, and best matches make up 62% of all accepts where they were shown — indicating trust.
What isn't causal yet
Fill rate is up, but the test cohort is high repeat-hire — they could have accepted these people anyway. We need to expand the user base before attributing the lift to the feature.
Biggest opportunity gap
A third of best-match shifts still go unfilled, and only 11 of 296 accepted best matches were new to the client. We need to understand why clients didn't pick them.
Turning passive waiting for applicants into proactive inviting
Clients used to have only one way to fill a shift: publish it and wait for applications. On shifts where no one had applied yet, that meant staring at an empty applicant list with no clear next step. I designed an invite feature that gives clients a second, more active path — instead of waiting, they can reach out directly to workers they already know or to workers Temper recommends.
To make this option impossible to miss, especially on empty shifts, I gave it deliberate visual weight: a second tab next to “Applicants”, dedicated to recommended workers the client can invite in a tap. An empty shift is no longer a dead end but a starting point.
Flagging last-minute cancellations where clients already look
When a worker cancels last minute, clients often miss the notification email — and the shift ends up understaffed with no time to react. I designed a solution that brings this urgency into the planning page, where clients already spend their time: shifts with a cancellation-related open spot in the next 48 hours are flagged with an alert, and a hover state surfaces the details so the client can act immediately.
Crucially, the hover state also shows the number of pending applicants — so the client can judge at a glance whether they can accept someone right away, or whether they first need to invite more workers. The goal was not just to flag the problem, but to give clients the context they need to take the right next step.
Automatically finding a replacement when nobody reacts in time
Even with the alert, some cancellations come too late for anyone to react. Last-min cover acts as a safety net for exactly that situation: when enabled at shift publication, it automatically finds and accepts a quality replacement if a cancellation happens within 48 hours of the shift starting. Replacements are drawn only from the client’s flexpool or workers with a strong track record and relevant experience, so the shift stays filled without the client needing to do anything — and without compromising on worker quality.
Recommending new workers to add to clients’ flexpools
Keeping a flexpool well-stocked with reliable workers is a real planning task, especially for enterprise clients managing multiple locations. I designed a feature that automates this by recommending workers who have completed at least three shifts with the client and earned strong ratings, making it easy to add them to the right flexpool in one click. It also surfaces inactive workers, so flexpools stay current. The result is that clients can confidently enable auto-accept when publishing shifts, turning a well-maintained flexpool into a self-filling staffing pipeline.
The other half of the match
Temper — Worker App
Every accept on this side starts with an application on the other side. How I help workers find the shifts they're most likely to get.








