For teams accountable for coverage

Coverage you can see.
Decisions you can defend.

Shiftd surfaces open seats, conflicting assignments, and over-hours before you publish. Staff get the schedule on their phone the moment it goes out. Every change leaves a record.

Built for hospital units and every team where a gap in coverage is a real problem, not a spreadsheet footnote.

For schedulers

One workspace runs the schedule. From first draft to operational record.

Every schedule lives in a single workspace: lifecycle, assignments, coverage, compliance, approvals, and history. This is what a scheduling week looks like inside it.

  1. Overview

    Know where the schedule stands, always.

    The lifecycle panel states the current phase, what staff can see, and the next action. Publishing runs through a wizard that shows coverage gaps, conflicts, and unfilled seats before a single person is notified.

  2. Assignments · Conflicts

    Conflicts point at their own fix.

    Double-bookings and rule violations are named with the assignment that caused them. Resolve jumps straight to the highlighted cell in the grid, so the fix is one click from the finding.

  3. Compliance

    Tier obligations, scored while you build.

    Each clinical staff member's shift obligations are checked against the schedule: under, over, or in range. When someone is short, assign them a shift straight from the row.

  4. Approvals

    Every request, one inbox.

    Trades, giveaways, and time off arrive in a department-wide inbox. Decide with the schedule open next to you; the decision is pushed to the staff member's phone.

  5. History

    Every change has a before and after.

    A schedule-scoped audit trail records phase moves, assignment changes, and publish events, each attributed to the person who made the call. Defensible by design.

The eight-phase lifecycle

Build, review, adjust, publish. Every handoff leaves a record.

Draft. Admins lay out the bones: dates, shift types, and how many of each role every day needs. Staff see nothing yet.

Self-signup. A signup window opens and staff bid for the shifts they want from their phones. Caps and role rules screen every bid.

Admin adjust. Schedulers fill what signup left open, resolve conflicts, and rebalance hours with the coverage grid in view.

Supplemental. Still short? An extra-shift signup opens for the unfilled seats, with a hole report tracking what closes.

On-call. Call coverage layers on as its own child schedule, so escalation never muddies the base assignments.

Locked. Edits stop. The schedule holds still for a final read before the rules run.

Balanced. Every rule runs once more: hour caps, role match, tier obligations. Anything that fails is named.

Published. Staff are notified and the schedule becomes the operational record. From here, changes flow through requests.

Publish makes the schedule visible to staff. After that, changes flow through requests and custom shifts, so the operational trail stays intact.

For staff

Staff get answers, not screenshots.

The moment a schedule publishes, it is in every pocket. The iPhone app is built for the 11pm check: next shift, requests, done.

  • Next shift first

    The dashboard leads with the next assignment: date, time, shift. One glance answers it.

  • Signup windows

    When self-signup opens, staff get a push and bid for the shifts they want. Caps and role rules apply to everyone the same way.

  • Requests by phone

    Trades, giveaways, and time off are submitted in seconds. The decision comes back as a push notification, with a record behind it.

  • Calendar, synced

    Every assignment flows into a personal calendar feed for Apple or Google Calendar. The schedule lives where their life already does.

Download on the App Store

Why teams trust it

No automation magic. The schedule shows its work.

01: Visibility

Coverage gaps are named, not hidden

Open shifts, over-hours, and conflicts appear before publish with the rule that flagged them. A person stays in control of the final call.

02: Guardrails

Rules apply the same way every time

Every assignment runs through the same backend engine: caps, role match, lifecycle phase, permissions. The UI cannot bypass a constraint, even by mistake.

03: Audit trail

Every change has a before and after

Drafts, signups, admin adjustments, call coverage, and publish decisions stay traceable. Nothing important changes without a record.

Run the next schedule in Shiftd.

Workspaces are invite-only. Ask us for a pilot, or sign in to the workspace your department already runs.