Pharmacy

A pharmacist on the counter, or the counter is shut.

One absence can close dispensing for the day. Cover the responsible-pharmacist slot first, and see the branch that is about to be short before it opens.

The daily reality

The problems you know too well

  • A branch that cannot legally open
  • Locum booked at the last minute, at the worst rate
  • Holiday approved that leaves nobody to dispense
With Formclock

How Formclock handles it

  • Positions seeded for pharmacy: Pharmacist, Technician, Dispenser, Counter Assistant
  • Coverage the agent fills and explains
  • Compliance enforced before every publish
  • Fair rotation everyone can see
Coverage

Gaps show up before the shift does.

Coverage requirements per day and position mean a hole in Friday shows up on Monday, and the agent can offer it to the right people before it becomes an emergency.

How gaps get filled
1 gap · Fri 4–10pFill gap

The responsible pharmacist slot decides the whole day

Most rotas degrade gracefully. A pharmacy rota does not: without a pharmacist the counter cannot dispense, so the shift is not understaffed, the branch is shut for its main purpose. One absence is the difference between a normal trading day and a closed dispensary with a queue outside it.

That single dependency should be the first thing the grid enforces and usually the last thing a spreadsheet knows about. Making it a cover requirement means the day reads as short until the slot is filled, which is a different and more useful signal than a rota that simply has fewer names on it than usual.

That makes it the one shift worth planning furthest ahead. Everything else in the branch can flex, and this cannot: without it the counter does not trade, regardless of how many other people are rostered. Treating it as a cover requirement with a named qualification behind it, rather than as an assumption that somebody will be there, is the difference between a plan and a hope.

Locum cost is mostly a timing outcome

Locum rates get discussed as a market problem. In practice the premium tracks notice: a week out you are choosing from people who want the work, and on the morning you are choosing from whoever answers.

So the lever is not negotiation, it is knowing earlier. A cover shortfall visible while your own staff can still be offered the shift converts a proportion of locum bookings into internal cover, and the rest into bookings made with notice. Neither is a discount. Both are cheaper than the phone call at eight in the morning.

The number worth watching is therefore not the locum rate but the notice. A branch that knows in March that it is short on a Thursday in April has options, including asking somebody who already works for you. The same branch finding out on the Wednesday has one option and no negotiating position, and the invoice reflects exactly that.

Holiday approval that quietly closes a branch

Leave is usually approved against the person: do they have the days, is the request reasonable. The question that actually matters is whether the branch still opens, and that is a different query which most approval flows never run.

Seeing the cover shortfall for those dates at the moment of approving turns it into one decision instead of two. Approved leave then blocks scheduling automatically, so the person is not accidentally rostered later, and the shortfall stays visible as something to solve rather than something to rediscover. the shortfall stays visible as something to solve rather than something to rediscover a fortnight later. The alternative is a leave calendar and a rota that are each internally correct and disagree with one another.

The fix is not to be stricter about leave, it is to make the consequence visible at the moment of approval. Somebody approving a week off should be able to see what that week looks like without the person in it. Approving into a gap and discovering it later is the same decision made with less information and considerably more inconvenience.

Dispensing volume does not care how many people you rostered

Prescription volume is uneven in ways headcount planning tends to flatten: Monday after a weekend, the day after a bank holiday, the first week of a month. Rostering the same shape every week means being comfortably overstaffed on the quiet days and short on the ones that were predictable.

Setting cover per day rather than repeating a template lets the rota follow the pattern you already know. The volume figure is yours, because you have it and the software does not. What the grid does is show which of those days is still short while there is time to act.

Volume is also predictable in ways that rotas often ignore. The days after a bank holiday, the start of a month, the week a local practice runs its reviews: these repeat, and the pattern is usually sitting in data nobody has looked at while building the rota. Staffing to a known pattern is not sophisticated, it is just being willing to look.

Several branches, one register of who can do what

A group running six branches has one pool of pharmacists, technicians and dispensers, and six rotas that each think they own a slice of it. The result is a person promised to two branches, or a qualification checked in one place and assumed in another.

One staff register with positions and registrations attached, and per-branch grids drawn from it, resolves both. Each branch schedules independently, the register is shared, hours total once per person for overtime, and a registration that lapses stops that person being eligible everywhere at the same moment rather than branch by branch.

One register also answers a question that separate branch spreadsheets cannot. When a branch is short, who else in the group is qualified, available, and not already at their hours. That is a two-minute answer with a shared register and an afternoon of phone calls without one, and the difference shows up directly in what you spend on cover.

We stopped finding out about an uncovered branch on the morning it mattered.
Superintendent, community pharmacy group

Illustrative scenario, not a customer quote.

Questions

Pharmacy scheduling, answered.

Can we make sure a pharmacist is always covered?+
Set the responsible-pharmacist slot as a cover requirement on the shift and it reads as short until somebody who holds that position is on it. It is the first thing the grid should tell you, because without it the rest of the rota is academic. It is the one shift worth planning furthest ahead, because everything else in the branch can flex and this cannot. Treating it as a cover requirement with a named qualification behind it is the difference between a plan and an assumption that somebody will be there.
Does it track registration and expiry?+
Yes. Registration sits on the person with an expiry date and eligibility ends on that date, not when somebody notices. The check runs when the coverage agent fills a gap unattended too, which is the case where a manual process is most likely to slip. Yes, held against the person with a warning window ahead of the date rather than on it. The date that matters is the one by which you need to have started doing something, not the day the registration actually lapses.
How does this reduce locum cost?+
It does not book locums and does not negotiate rates. What it changes is when you know: a branch that will be uncovered a week out is a shift you can offer internally, and a branch uncovered this morning is a locum at short notice. Most of the premium is timing rather than market. By moving the discovery earlier rather than by negotiating the rate. A branch that knows in March it is short on a Thursday in April has options, including asking somebody who already works for you. The same branch finding out on the Wednesday has one option and no negotiating position.
Can it stop us approving leave that closes a branch?+
Approved leave blocks scheduling on every plan, so the person is not then rostered. Whether the branch is left uncovered is still visible as a cover shortfall against that day, which is the signal to look at before approving rather than after. Approving a week off should show you what that week looks like without the person in it. The fix is not being stricter about leave, it is making the consequence visible at the moment of approval rather than a fortnight later.
We run several branches. Is there a per-branch fee?+
No. Billing is per active user across the organisation with no per-location charge, so somebody who covers two branches is one seat, their hours total once for overtime, and adding a branch adds no fee. Each branch keeps its own grid and positions, and holding the whole group in one workspace is what makes a shared register of qualifications possible.

See it with your own schedule

Set up a workspace, add your team, and build a week. It takes about ten minutes and costs nothing.

Start free