Schedula

How can we help?

Everything you can do in Schedula — by feature, by role, and by plan. Search below, or browse the topics in the sidebar.

What's new

What's new

Schedula is faster, every screen has its own address, and Reports exports to a spreadsheet.

Schedula was rebuilt on a faster foundation. Pages open sooner, and every screen — Schedule, Attendance, Reports and the rest — has its own address you can bookmark, share, or go back to with your browser's back button.

This section only ever describes the latest release. For everything that has been added, improved, changed or removed since you started using Schedula, see the full release notes.

For everyone

  • If you added Schedula to your iPhone's home screen, reopening it no longer sends you back to the sign-in page.
  • The public website, including pricing, help and the legal pages, is now available in French at schedula.ca/fr.
  • Opening an announcement from the notification bell now counts it as read.
  • Resetting a forgotten password asks for at least 12 characters, the same as signing up.
  • Shifts and time off created late in the evening now stay on the day you picked.

For managers

  • Reports → Export CSV downloads the table with the columns you picked, as plain numbers a spreadsheet can add up.
  • The payroll export can be run for a single employee.
  • When someone calls in sick, record it for them from Time Off / Vacation by choosing who is sick.
  • A kiosk tablet now says when it has lost its internet connection, and asks people to punch from their phone until it is back.

For staff

Once your shift is close to the overtime threshold, the overtime request button stays available, and you can send the request straight from the notification.

Getting started

What is Schedula?

A real-time scheduling, availability, and attendance app for shift-based teams.

Schedula is a scheduling, availability, and attendance app built for teams that work in shifts — events, hospitality, retail, healthcare, and anywhere the roster changes week to week. It replaces spreadsheets and group texts with one live system that everyone on the team shares.

Everything happens inside an organization (your workspace). You can belong to several organizations and switch between them from the org selector in the sidebar. Changes are real-time — when a manager publishes a shift, staff see it instantly, no refresh needed.

What you can do with it

  • Build schedules on a weekly grid, from templates, or automatically with AI.
  • Collect availability and time-off requests so you never schedule someone who can't work.
  • Track attendance with phone clock-ins, GPS, and photos.
  • See labor cost & coverage in reports before problems happen.
  • Keep everyone in the loop with reminders, announcements, and push notifications.
  • Talk to the team in direct and group messages, and ask them things with surveys.
  • Keep the paperwork — HR profiles, employee documents, and signatures — beside the schedule.
Two things that make Schedula click
System roles decide what each person can see and do (owner, admin, manager, staff). Plans decide which features your workspace has unlocked (Starter → Enterprise). Both are explained in their own sections below.
Schedula works in any browser and installs to your phone.

Quick start

Go from sign-up to a published schedule in five steps.

Here's the fastest path from an empty workspace to a schedule your team can see.

  1. 1Start your 30-day trial. Create your organization and give it a name.
  2. 2Add your team in the Staff Roster: names, job roles, target hours, and hourly rates. Add your locations in Settings.
  3. 3Invite staff by email. They accept, set a password, and mark their availability and time off.
  4. 4Build the week in Schedule — drag shifts in by hand, apply a saved template, or (on Scale) let AI auto-fill open shifts.
  5. 5Publish. Staff get the schedule and reminders, and clock in from their phones when their shift starts.
No installs required
Schedula runs in any browser. For the best mobile experience, staff can install it as an app (see Install on your phone) to get home-screen access and push notifications.

Roles & permissions

Owner, admin, manager, and staff — who can see and do what.

Schedula has two separate ideas that both use the word "role." Keep them straight and everything else makes sense:

System roles (permissions)

These control what a person can access. Each membership has exactly one.

  • Owner — full control. Manages the plan & billing, organization settings, and locations; can create or delete the workspace, invite people, and assign any role, including owner. A workspace can have more than one owner.
  • Admin — everything a manager can do, plus organization settings, locations, and managing staff/roles. Admins cannot grant the owner role or touch billing.
  • Manager — builds and publishes schedules, manages the roster, reviews attendance, approves time off and overtime, and views reports. No settings or billing.
  • Staff — sees their own schedule, sets availability and time off, clocks in/out, and picks up or swaps shifts. Staff only ever see their own data.

Job titles

Separately, every team member has a job title (Manager, Staff, In Training, Project Lead, Designer, or any you add). Job titles are labels used for scheduling — a shift can require a specific job role so conflict checks and auto-scheduling respect it. A person's job title is independent of their system role.

Which tabs each role sees
Staff see Schedule, Availability, and their own Attendance. Managers add Staff Roster, Reports, and Payroll. Owners and admins add Settings. Some tabs also depend on your plan (see below) — the Payroll tab, for instance, is hidden entirely below Growth rather than shown locked.
Assign a system role to each member from the Staff Roster.

Install on your phone

Add Schedula to your home screen and enable push notifications.

Schedula is a Progressive Web App, so it installs like a native app straight from the browser — no app store needed.

iPhone / iPad (Safari)

  1. 1Open Schedula in Safari and tap the Share button.
  2. 2Choose "Add to Home Screen", then tap Add.
  3. 3Open Schedula from the new home-screen icon and allow notifications when prompted.

Android (Chrome)

  1. 1Open Schedula in Chrome and tap the ⋮ menu.
  2. 2Choose "Install app" (or "Add to Home screen").
  3. 3Launch it from the icon and allow notifications.
Works offline
Once installed, the app shell loads offline and clock-ins queue offline and sync automatically the moment you're back online — handy for venues with spotty signal.

Core features

Schedule

Build the weekly grid by hand, from templates, or with AI, then publish it.

The Schedule is the heart of Schedula — a weekly grid of shifts by person and day. Everyone can view it; managers and up can edit it.

Drafts & publishing

Every shift you create starts as a draft — visible to managers, invisible to staff — until you publish the week. Build the week however you like, then release it in one go.

  • Drafts show a dashed border and a Draft badge, and an "n unpublished" chip appears beside the week picker.
  • Click Publish week (n) in the toolbar to publish every draft in that Sunday–Saturday week at once.
  • Publishing sends each assigned person a "Schedule Published" notification, emails the week's scheduleStarter+, and broadcasts "Open Shifts Available" if the week contained open shifts.
  • Editing an already-published shift keeps it published and notifies as usual. Only drafts are silent.
  • Staff can't see, bid on, clock into, or get reminders for drafts. Approved time off still creates a visible Vacation shift right away.

Creating & editing shifts

  • Click an empty cell to open the quick-create popover at that cell (a bottom sheet on mobile). The employee and date are filled in — set the times and hit Create.
  • Use preset chips for shifts you build often (save one with "Save as preset" in the full shift modal), or Same as last to copy that person's most recent shift. More options… opens the full modal with whatever you've already typed.
  • Each shift has a date, start/end time, location, job type (Work, Vacation, Sick, T.B.D, Absent), and notes.
  • Attach up to 5 files per shift (10 MB each) — run sheets, floor plans, or briefs.
  • Move, duplicate, or delete shifts. Set preferred employees to guide auto-scheduling.
Keyboard shortcuts
Press N to create a shift at the focused cell, arrow keys to move the focus ring, Enter to open a cell, Esc to back out, and ? for the full cheat sheet. Shortcuts are ignored while you're typing in a field.

Select mode & bulk actions

Click Select in the toolbar, then click shifts to tick them. A bottom bar shows how many you've picked, with Delete, Assign to…, Copy to week…, Move to week…, and Done. Copying or moving keeps the same weekdays in the target week; Esc exits select mode.

Confirming a shift was seen

Publishing tells you the schedule went out; confirmations tell you somebody read it. A published shift a person has not confirmed carries a NEW badge for them, with a banner on the Schedule and on the dashboard to mark them all as seen at once.

  • Managers see how many shifts are still unconfirmed, and can nudge everyone still pending — limited to once every 6 hours per shift, so a double-click cannot spam the team.
  • Editing a shift clears its confirmation. Changing the date, time, location, type, or assignee asks for confirmation again; editing the notes does not.
  • Shifts belonging to removed staff drop out of the count instead of sitting unconfirmed forever.
  • Anyone can switch these notifications off for themselves under Shift confirmations in their profile.

Task lists

A shift can carry the list of things that need doing during it, ticked off from the clock panel while the shift runs. See Shift task lists for the detail.

Open shifts & the marketplace Starter+

Leave a shift Open (unassigned) and offer it to the team. Staff can bid on or pick up open shifts, and swap shifts with each other — all subject to your approval. Give the shift a required position and only the people qualified for it are notified and able to bid.

Templates

Save a typical week as a template and apply it to any future week in one click, then tweak. Great for recurring schedules.

Conflict & overtime checks Starter+

Schedula warns you when an assignment double-books someone, clashes with their availability, or pushes them into overtime — before you publish.

AI auto-scheduling Scale+

Let Schedula fill open shifts automatically. It balances each person's target hours, seniority, cost, priority tier, and any required job roles, then shows you the result to approve.

Email delivery Starter+

Send the schedule to staff by email so it lands in their inbox too — automatically when you publish a week, or on demand with Send schedule. Either way it includes published shifts only, never drafts.

The Schedule tab — pick a week, filter staff, and add shifts.

Shift task lists

The things that need doing during a shift, ticked off from the clock panel.

A shift can carry the list of things that need doing during it — up to 25 tasks. A shift with no tasks shows no checklist anywhere, so this stays invisible until you use it.

Adding the list

  • Open the full shift modal and add tasks one line at a time.
  • Save the list on a shift preset or a template and every shift created from it starts with the same tasks — which is how opening and closing routines stop being retyped.

Ticking them off

The person working the shift sees the checklist on the clock panel while the shift is running, and ticks items as they go. It works offline: ticks queue like a clock-in and replay when the signal comes back, without doubling up.

Where completion shows

A ratio such as 2/3 appears on the shift card in the Scheduler and in the Attendance day view, so a manager can see how a shift is going without asking.

Reassigning resets the ticks, not the list
Hand a shift to someone else and the new person starts from a fresh, unticked list. Editing anything else — time, location, notes — leaves completed tasks alone.

Calendar sync

Subscribe to your own shifts from Google, Apple, or Outlook.

Your published shifts can appear in the calendar app you already use, and keep themselves up to date. Everyone creates their own link — there is nothing for an administrator to switch on, and it works on every plan.

  1. 1Open your profile and press Create sync link.
  2. 2Paste it into Google Calendar (Other calendars → + → From URL), Apple Calendar (File → New Calendar Subscription), or Outlook (Add calendar → Subscribe from web).
  3. 3Your shifts appear there and refresh on their own.

Your calendar app decides how often it looks

Google Calendar is the slow one. It re-reads a subscribed link on its own schedule, often only every several hours, and deliberately offers no refresh button. A shift published now can take most of a day to appear there — that is normal, not a broken link. To check, open the link in a browser and you will see the current shifts immediately. Apple Calendar lets you pick the interval (Calendar → Settings → Accounts → Refresh), which is the quickest way to watch a change land.

What a feed contains

Only your own published shifts. Never anyone else's, and drafts stay out until they are published, so a schedule someone is still working on cannot leak through a calendar. Removing someone from the workspace switches their feed off, and it stays off even if they are invited back later.

Treat the link like a password
Calendar apps cannot sign in to a subscription, so the link itself is the only thing proving who you are — anyone holding it can read your shifts. Post it somewhere by mistake and Reset link in your profile kills the old one immediately; you then re-subscribe on each device.

Availability & time off

Staff say when they can work; managers approve time off; leave balances keep the score.

Availability tells Schedula when people can and can't work, so schedules build around real life instead of guesswork.

For staff

  • Mark days (and optional time ranges) as Unavailable or Preferred, with a note.
  • Submit time-off requests for vacation or personal days.

For managers

  • Approve or deny time-off requests.
  • Availability automatically feeds conflict checks and auto-scheduling, so you don't book someone who's off.

Time banks — leave balances Growth+

A leave policy is a balance people can spend time off against. A workspace created from release 1.8.0 on starts with a Vacation and a Sick policy, both manual only, so nothing accrues until someone configures it; a workspace that predates the release starts with none and adds its own. Admins and owners manage them in Settings → Attendance → Time Banks, up to 20 per workspace. A policy is deactivated, never deleted, so a balance that already moved under one can still say what moved it.

A policy earns in one of three ways:

  • Manual only — nothing accrues. The balance moves only when someone adjusts it by hand or spends it on time off. This is what both seeded policies use.
  • Granted once a year — a fixed number of minutes on an anchor date you choose (1 January unless you change it). It grants once per calendar year, and moving the anchor mid-year does not grant a second time. A date the month does not reach falls back to the last day of that month, so a 29 February anchor grants on 28 February in an ordinary year rather than being skipped.
  • Per hour worked — minutes earned for each hour actually clocked, up to 60 minutes an hour. Only approved time entries count, so an unapproved timesheet accrues nothing until a manager signs it off.
Balances start at zero — nothing is migrated
Turning this on does not look back. Time off approved before it existed is not deducted from anyone, and no accrual is backdated. To set an opening balance, use Adjust on the Staff Roster: it writes a ledger row saying who set the balance and why, which is the only honest way for minutes to appear.

The ledger explains every change

Behind every balance is an append-only ledger. Each row carries the minutes, the reason — accrual, approved time off, a cancellation, a manual adjustment, banked overtime, or a carryover forfeiture — who did it, and when. Managers open it from the balances column in the Staff Roster. The balance itself is only a running total of those rows, and Schedula can recompute it from them to check the two still agree.

Requesting against a balance

  • The request form asks which policy the time off comes out of, and offers Not deducted from a balance as well — bereavement, jury duty and unpaid leave should charge nothing.
  • The minutes are pre-filled from the weekdays in the range at 8 hours a day, and can be changed to whatever the time off actually costs.
  • Before sending, the form shows what the request would leave you with. Nothing is blocked: a request for more than you hold is allowed, warns, can be approved, and the resulting negative balance is shown in red everywhere it appears.
  • The balance moves on approval, not on request. Cancelling an already-approved request credits the minutes back, under its own ledger reason against the same request.

Accrual runs once a day

Accruals are granted by a daily job at 05:00 UTC. It only ever accrues for days in your workspace’s timezone that have finished — never the day it is running in, which would credit a day whose punches have barely started — and each run revisits the last three finished days, so a timesheet approved the morning after still accrues. Every grant is recorded once and only once, so a re-run changes nothing. A day approved later than that three-day window needs the accrual re-run by hand; it is not picked up automatically.

Carryover is forfeited visibly, not clamped
If a once-a-year policy has a carryover cap, it is applied at the anniversary, after that year’s grant. Anything above the cap is written off as its own ledger row naming the minutes lost, so someone asking where their two weeks went can be shown the answer. A cap is never applied continuously, and a per-hour policy never forfeits.
Who and what plan
Capturing availability and time off is included on all plans. Time banks need Growth or above: policies are managed by admins and owners, balances and manual adjustments by managers and up, and every adjustment is audit-logged. Reading a balance is never plan-gated — a workspace that drops below Growth keeps showing the minutes its people already hold, because those are owed whatever the plan says. What it loses is the ability to move them: the policy editor locks and the picker disappears from the request form.
Availability and time-off requests — submitted by staff, approved by managers.

Attendance & clock-in

Phone clock-ins with GPS, photos, breaks, approvals, and late/no-show alerts.

Attendance turns phones into time clocks and gives managers a live view of who's on the floor.

For staff

  • Clock in and out of your shifts from your phone.
  • Clock-ins work offline and sync when you reconnect.

For managers

  • See live and historical attendance and time entries.
  • Capture GPS location and a photo at clock-in/out for verification.
  • Review, edit, and approve time entries and add break time.

Late & no-show alerts Growth+

Schedula can tell you while a shift is happening that nobody has clocked in for it, instead of leaving you to notice afterwards. It is off until you turn it on: an owner or admin enables it under Settings → Attendance → Late & No-Show Alerts. Switching it on never fires alerts about shifts that were already past their late threshold at that moment, so nobody gets a burst of notices about the morning that already happened.

  • Late after (min) — how long past the scheduled start an unpunched shift waits before the late alert goes out. Default 10.
  • No-show after (min) — the second, later threshold. Default 30, and it must be greater than the late grace period.

A late alert goes to every manager, admin, and owner and to the employee themselves — most missed punches are a forgotten clock-in rather than an absence, so the nudge often fixes it before anyone has to act. The later no-show alert goes to managers, admins, and owners only; the employee is not nudged twice. Each shift produces at most one of each.

Only published shifts count. Drafts, open (unassigned) shifts, and non-work shifts such as vacation or sick days never raise an alert.

Good to know
  • Clocking in on time means no alert at all. Each check only asks whether a punch exists yet, so a shift that was clocked into before its threshold was reached is never mentioned.
  • Attendance is checked every 5 minutes, so an alert can arrive up to 5 minutes after the threshold you set — and a punch that lands in that gap still stops the alert.
  • Clocking in late stops the rest. The alerts are about a missing punch, not a late one. Someone who clocks in 25 minutes into a shift with a 10-minute grace will already have drawn the late alert, but the no-show alert never follows — the punch is there by then. Lateness that was actually punched shows up as a badge on the timesheet instead.
  • Moving or reassigning a shift resets it. A shift that already raised an alert and is then rescheduled or handed to someone else is judged again against its new time and new assignee.
  • Anyone can silence these for themselves with the Attendance Alerts toggle in their profile's notification settings — on by default. Turning it off stops both the manager alert and the employee nudge for that person.

Timesheet exception badges Growth+

In the Attendance list, managers see an amber badge on any time entry whose punches disagree with the shift it was scheduled against. Badges are worked out fresh every time the list loads, so correcting an entry updates them immediately.

  • Late in — clocked in more than the late grace period after the scheduled start.
  • Early out — clocked out more than the late grace period before the scheduled end.
  • No clock-out — still open 12 hours after the shift should have ended (or 12 hours after clock-in, when the punch has no shift).
  • Long break — a break that ran more than 5 minutes past its planned length.

The Needs review checkbox above the list narrows it to entries that carry at least one badge and have not been approved yet. Approving an entry takes it out of that list. The filter also applies to Export CSV and Export PDF — you export exactly what you are looking at.

Shifts nobody clocked out of

When someone forgets to clock out, Schedula ends the shift for them rather than leaving the entry running. A punch with no shift end governing it closes after the Max open shift (hours) limit in Settings → General → Attendance — 12 hours by default, anywhere from 1 to 48. A shift with a scheduled finish still ends at that finish.

An entry Schedula closed itself carries an Auto-closed badge and appears under Needs review, because the hours on it are an estimate: nobody recorded that end time. Correct it before payroll rather than after — that is what the badge is for. A shift that ended at its own scheduled finish is the system working normally and stays out of the list.

Punching from a shared tablet

Staff without a phone to hand can clock in from a tablet paired as a kiosk. Those punches behave like any other and are marked as having come from a kiosk — see Kiosk mode.

Locked pay periods Growth+

Once a pay period has been locked in Payroll, the time entries inside it are read-only here. Adding, editing, approving, or deleting an entry — or any of its breaks — on a date the locked period covers is refused for managers and admins. An owner can still make the change, and every owner edit inside a locked period is written to the audit log. Clocking in and out is never blocked: a live punch is happening now, so it cannot land in a locked past period.

Plan required
Attendance is a Starter feature; GPS location and photo verification require Growth and above. Late & no-show alerts and the timesheet exception badges also require Growth, and the badges and the Needs review filter are visible to managers, admins, and owners only.
Clock in from your phone; managers review, add time, and export.

Kiosk mode

A shared tablet by the door as the time clock — tap your name, enter your PIN.

Kiosk mode turns one shared tablet into a punch terminal, so nobody needs their own phone to clock in. The tablet has no login of its own: staff tap their name, choose clock in or out, and enter their 6-digit PIN. It is available on Growth and above.

Pairing a tablet

  1. 1An owner or admin opens Settings → Kiosk and creates a pairing code — six characters, single use, valid for 10 minutes.
  2. 2On the tablet, open /kiosk and enter the code. The tablet stores a device token and shows the staff list from then on.
  3. 3Remove a tablet from the same screen when it is retired or lost. Unpairing takes effect on the tablet's very next tap, with no grace period.

Staff PINs

  • Set or clear someone's PIN from the Staff Roster. It is 6 digits, and obvious ones (000000, 123456, all-same digits) are refused outright.
  • Nobody can read a PIN back afterwards — not a manager, not an owner, not support. A forgotten PIN is replaced, never recovered.
  • 5 wrong attempts locks that person out for 15 minutes, on every tablet rather than only the one they were standing at.

A kiosk punch is an ordinary punch

Breaks and overtime requests behave exactly as they do on a phone, and the entry is marked as having come from a kiosk so it is recognisable on timesheets and in payroll. One difference: a kiosk needs an internet connection to punch. PINs are checked by the server, so unlike the phone app the kiosk does not queue punches while offline. If the connection drops, the kiosk says so, and staff can clock in from the app on their phone in the meantime. A paired tablet can only punch: it can never see schedules, pay, or anyone's details beyond the names on the roster.

Who can set this up
Pairing and unpairing happen in Settings, so owners and admins do them; PINs are set from the Staff Roster by managers and up. Both need Growth or above. Staff need nothing but their PIN.

Payroll & pay periods

Pay periods, punch rounding, wage premiums, locking, and a payroll-ready CSV export.

Payroll is its own tab for managers, admins, and owners. It turns a pay period's approved timesheets into a CSV you can hand to whoever runs payroll: one line per person, with regular hours, overtime, breaks, the hourly rate, any wage premiums, and gross pay. It reads and it locks — fixing a punch still happens in Attendance.

Pay periods Growth+

Pick the cadence in Settings → Attendance → Pay Periods & Rounding. Nothing is stored until you lock something — the periods in the picker are worked out from the setting, so changing the cadence simply re-draws them.

  • Weekly and Biweekly (the default) count whole periods from the First period start date you choose, forwards and backwards, forever. Pick a Monday and every period starts on a Monday, including the ones before the date you picked.
  • Semimonthly ignores that date entirely and splits every month into the 1st–15th and the 16th to month end — so February ends on the 28th, or the 29th in a leap year. Monthly is calendar months.
  • An entry belongs to the period that contains its clock-in date. An overnight shift that starts on the last day of one period and ends in the next is paid entirely in the earlier one.

Punch rounding Growth+

Rounding is off by default. Turn it on with an increment of 5, 10, or 15 minutes and a direction — nearest, round up, or round down. The direction only applies once an increment is set.

Rounding never changes a recorded punch
It is applied when the payroll figures are worked out, to each person's period total — once to their regular hours and once to their overtime — not to individual shifts and not to the clock-in and clock-out times themselves. The stored time entries are untouched, so Attendance keeps showing exactly when someone worked, turning rounding off puts the original figures straight back, and nothing needs recalculating when you change the setting.

Worked example: 7h52m is 472 minutes. At nearest 15 that is 7 minutes past 465 and 8 short of 480, so it pays as 7.75 hours. With rounding off it pays as 7.8667 hours.

Approving and locking a period Growth+

Approve all signs off every finished, unapproved entry in the period at once. Unapproved entries are still counted and still exported — the amber warning is there so you see them before the run, not to quietly drop them from it.

Lock period then freezes it. Any manager or admin can lock. Once locked, nobody below owner can create, edit, approve, delete, or change the breaks on any entry whose clock-in falls in those dates, in Payroll or in Attendance. Clocking in and out is never blocked — a live punch is happening now and cannot land in a locked past period.

The owner override, and how to get back out
  • An owner can still edit an entry inside a locked period — a missed punch discovered on payday is a real thing. Every such edit is recorded in the audit log, so the escape hatch leaves a trace.
  • Unlock is owner-only. Managers and admins cannot reopen a period they locked; the Unlock button only appears for owners.
  • Unlocking is deliberately not plan-gated — the server never refuses an owner's unlock over the plan. The Payroll tab itself is still hidden below Growth, though, so a workspace that downgrades with a period left locked has to be back on Growth to reach the button.

The CSV Growth+

Export CSV downloads the period as one row per employee, in this order: Employee, Job Title, Regular Hours, Overtime Hours, Unpaid Break Hours, Paid Break Hours, Hourly Rate, Regular Pay, Overtime Pay, Premium Hours, Premium Pay, Gross Pay, Entries, Unapproved — followed by a TOTAL row.

  • Hours print to 4 decimals and money to 2, so the file reconciles by hand: printed hours × printed rate is the printed regular and overtime pay, gross is those two plus Premium Pay, and each total is the sum of the column above it. The screen rounds hours to 2 decimals; the file is the artifact to pay from.
  • Unpaid breaks are already deducted from the hours; paid breaks are already inside them. Both are shown so the deduction is visible rather than implied.
  • Only people with time entries in the period get a line. Nobody appears at zero hours.
Overtime is paid at the regular rate — for now
Approved overtime is split out of the worked total into its own column so you can see it, but Schedula has no overtime multiplier yet, so Overtime Pay is those hours at the same hourly rate. Wage premiums (below) are the way to pay more for particular hours, and they apply to overtime minutes as well — so nothing multiplies a multiplier.

Banking overtime instead of paying it Growth+

Under Settings → Attendance → Time Banks → Approved overtime you can send approved overtime to a leave policy rather than to the payroll run. Approving an overtime request then credits those minutes to the employee’s balance, to be taken later as time off, and stamps the request as banked at the same moment.

Banked overtime is never also paid
Banked minutes are removed from the worked total before regular and overtime hours are worked out — not merely left out of the overtime column, which would have quietly paid them at the base rate instead. A fully banked hour therefore adds nothing to Regular Hours, Overtime Hours or Gross Pay. The export decides this from the stamp on the overtime request itself, so overtime approved after a period closed is still recognised as banked. The CSV columns are unchanged; nothing needs remapping.
Banking needs a policy to bank into
The settings screen refuses to save Bank it as time off until you choose the policy it banks into. If that policy is later deactivated, the screen says so and approved overtime is paid out in the meantime — stamping a request as banked with no balance behind it would lose the minutes altogether. Note that banking is deliberately not switched off by a downgrade: a workspace that drops below Growth keeps banking overtime under the rule it set, rather than silently starting to pay people out.

Wage premiums Growth+

A premium pays extra for particular hours — an evening or night differential, a weekend rate, a holiday rate. Add them in Settings → Attendance → Wage Premiums (admins and owners), and the export applies them to everyone automatically. A premium says when it applies and what it is worth.

  • Time window — a start and end time in HH:MM. The start counts, the end does not, and an end at or before the start wraps past midnight, so 22:00–06:00 is the night shift.
  • Days of the week — one or more whole days.
  • Specific dates — explicit dates for statutory holidays. Schedula ships no holiday calendar; you enter the dates you pay for, up to 200 per premium.
  • Every minute is judged by its local date, weekday and time in your workspace's timezone — so a Saturday-night shift stops counting as the weekend at local midnight, not UTC midnight.
  • What it is worth — a multiplier greater than 1 (at most ×5) or a flat amount per hour greater than $0 (at most $100). ×1.00 and +$0.00 are rejected rather than saved: they are worth nothing per hour, so they would sit in the list looking active and never pay.
Overlapping premiums never stack

A minute of work earns one premium — the best-paying rule for that person. Two overlapping rules mean "whichever is better", not "add them both".

  • "Best" is judged per employee, at their own hourly rate, on what the rule adds per hour: a multiplier adds rate × (value − 1), a flat amount adds its value. So ×1.15 beats +$2.00/h above about $13.34/h and loses below it, and the same two rules can genuinely credit two people on the same shift to different rules. That is what "whichever is better" means.
  • An exact tie goes to the older rule, so re-running an export never reshuffles which premium was credited.
  • A premium is an uplift. The hours themselves are already paid in Regular Pay and Overtime Pay; Premium Pay is only the extra on top, which is why Gross Pay is regular + overtime + premium.
Unpaid breaks reduce premium hours proportionally, not exactly
A break records how long it lasted, not which minutes of the shift it occupied, so Schedula does not guess. It works the premium out over the whole clocked interval and then shrinks every bucket by the same proportion: an 8-hour shift with 30 unpaid break minutes and 4 hours inside a premium window pays 3.75 premium hours, not 4. It is exactly right whenever a shift sits entirely inside or entirely outside a window — which is most shifts — and an honest approximation otherwise.
  • Premium hours are rounded with the same punch-rounding policy as the paid columns, once over the period total, and can never exceed the hours the row actually pays for.
  • Premiums apply to every worked minute, including overtime minutes. Overtime itself still pays at the plain hourly rate, so nothing compounds.
  • Premiums are deactivated, never deleted. There is no delete button: the CSV carries hours and dollars but not the rule that produced them, so a deleted premium would make a past export impossible to explain. Turning one off stops it earning from the next export onward and leaves it readable. Up to 50 per workspace.
Editing a premium changes what an export shows — including a locked period
Payroll figures are worked out fresh every time you open or export a period, from the premiums, hourly rates and rounding settings as they are right now. Locking a period freezes its time entries, not the rules the money is computed from, so re-exporting a period you have already paid after editing a premium will not reproduce the file you paid from. Keep the CSV you paid from, and prefer adding a new premium from a date forward over rewriting one that has already been paid.
Who and what plan
Payroll needs Growth or above and the manager role or higher. Below Growth the tab is hidden altogether rather than shown locked, while the pay period, rounding and wage premium settings in Settings → Attendance stay visible but disabled — so you can see what upgrading buys, and a workspace that downgrades can still read the premiums its past exports were computed from. Staff never see Payroll. Premiums are added by admins and owners, since Settings itself is admin-only.

Staff roster

Add people, set pay and targets, invite by email, manage job roles.

The Staff Roster is where managers and up build and maintain the team.

  • Add members with name, contact, job role, color, target hours, hourly rate, seniority, priority tier, and hire date.
  • Invite people by email — the invitation assigns their system role (admin, manager, or staff).
  • Mark members active or inactive without deleting their history.
  • Give people the positions they are qualified for, so shifts that require one only go to them.

What else opens from a roster row

  • Their HR profile and documents Growth+ — emergency contact, address, uploads, and sign-off.
  • Their leave balances Growth+, the ledger behind them, and a manual adjustment.
  • Set or clear their kiosk PIN for punching from a shared tablet.
  • Send them kudos — a short thank-you, public or private.

Import a team from CSV

Starting from a spreadsheet? Choose Import CSV and pick your file — up to 200 rows.

  1. 1Columns auto-map to first name, last name, email, phone, job title, hourly rate, and target hours. Fix any that guessed wrong.
  2. 2A preview flags bad rows before anything is created — invalid emails, people already on the roster, non-numeric rates, and rows whose columns have shifted.
  3. 3Valid rows import one at a time with a progress indicator, and you get a summary of anything that failed.
Importing sends invitations
Every person you import automatically receives an invitation email — this can't be turned off. Only import people you're ready to have join the workspace.

Bulk actions

Use the checkbox column (with select-all across whatever your filters are showing) to Deactivate, Change job title, or Change hourly rate for everyone you've picked at once — handy after a rate change or an end-of-season cleanup.

Staff seats by plan
Starter includes 25 seats (then $2.50 CAD/seat/mo), Growth includes 75 (then $1.70 CAD/seat/mo), Scale includes 200 with no overage — contact sales beyond that — and Enterprise is unlimited. See the plans section for the full breakdown.
Manage your team, their details, and their roles.

Positions

Job roles people hold and shifts can require, instead of a label beside a name.

A position is a real role — Bartender, Cook, Host — that a person holds and a shift can require. One person can hold several. Admins and owners manage the list in Settings → Team; the job titles a workspace already had were turned into positions automatically, with nothing renamed or lost.

  • Assign positions to people from the Staff Roster.
  • Give a shift a required position and only staff who hold it are notified about it and able to bid. A shift with no required position is open to everyone, exactly as before.
  • Auto-scheduling Scale+ leaves a shift open rather than filling it with someone who does not hold the position.
  • A manager can still assign whoever they like — covering a gap or training someone in is normal, so an unqualified assignment is a heads-up, never a block.

Who wins an open shift

Settings → General → Scheduling chooses how open shifts are awarded: manager picks (the default — bids wait for a decision) or first come, first served, where the first qualified bid wins automatically.

Positions are an audience too
Announcements and surveys can be aimed at a position, not only at a system role — so you can reach "the bartenders" rather than only "the managers".

HR profiles & documents

Emergency contacts, employee documents, expiry reminders, and signatures.

The paperwork side of employing someone, kept beside their schedule. Open anyone in the Staff Roster to reach their profile. Growth+

The profile

Emergency contact, address, date of birth, and employee number, editable by managers and up.

Documents

  • Upload contracts, certifications, and policies against a person.
  • Each document is either visible to managers only or shared with the employee. Staff see only their own shared ones — a managers-only document is completely invisible to the person it is about, including any hint that it exists.
  • Give a document an expiry date and managers are reminded before it lapses. Renewing the date lets it warn again next time.

Sign-off

Any document already shared with an employee can be sent for signature. A managers-only document cannot be — share it with the person first; sending never quietly shares it for you.

  • Staff sign by typing their full name, which is checked against the name on file. A mismatch is refused with a clear message and nothing is recorded.
  • A correct signature is final: nobody can re-sign, edit, or delete it — not the manager who sent it, not the workspace owner.
  • A signature is pinned to the exact file that was signed. Replacing the document afterwards never rewrites what an earlier signature says the person agreed to.
  • Managers see a per-document list of who has signed and when, and can remind everyone still pending — at most once every 6 hours.
If the plan lapses, records stay readable
HR profiles, documents, and sign-off need Growth or above. Drop below it and adding and editing stop — nothing is hidden or deleted, and existing signatures stay exactly where they are.

Recognition & kudos

Say thanks to a teammate, publicly or privately.

Kudos is a short message plus an emoji, sent to a teammate from the Staff Roster. You cannot send one to yourself.

  • Public kudos appear newest-first in a feed on the profile page that everyone can read.
  • Private kudos never appear there for anyone, owners included. The recipient is notified exactly the same either way.
  • Anyone can delete kudos they sent; managers can delete any — that is how a barbed one gets removed. An unrelated staff member cannot.
  • Reports carries a Most Recognised line over the last 30 days. It counts public kudos only, so it cannot be inflated with private ones nobody can verify, and it disappears entirely when nobody has been recognised in the window.
Not a paid feature
Recognition is something a team does with each other rather than tooling a business buys, so it is deliberately available on every plan.

Reports & analytics

Scheduled hours, coverage, staff distribution, and labor cost.

Reports turn your schedule and attendance into a picture of hours, coverage, and cost so you can catch problems before payday.

  • See scheduled hours, coverage, and staff distribution at a glance.
  • Track labor cost against budget and spot overspend early.
  • Export reports (including PDF and CSV) for payroll or records.

Needs attention

Managers get a Needs attention widget at the top of the dashboard: pending time-off requests, unassigned shifts this week, and schedule conflicts this weekStarter+. Each row shows a count and clicks through to the place you fix it. When there's nothing outstanding it simply says All clear.

Numbers you can click

All five KPI cards are shortcuts, not just readouts. Absences opens Attendance for the same week; Active Shifts, Total Hours, Scheduled Hours, and Gross Pay open the Schedule for that week, so you land on the shifts behind the figure.

Plan required
The analytics dashboard is a Starter feature; advanced reporting requires Growth and above.
See hours, coverage, and labor cost against budget.

Notifications & announcements

Reminders, the notification bell, push, and team announcements.

Schedula keeps everyone in the loop without another group chat.

  • The in-app notification bell collects schedule changes, approvals, and announcements.
  • "Schedule Published" goes to every staff member assigned a shift in a week their manager publishes — in-app and as a push notification.
  • "Open Shifts Available" goes out to active staff when a published week contains unassigned shifts, so they know there's something to pick up.
  • Turn on web push (install the app and allow notifications) to get alerts on your phone.
  • Managers can post announcements with attachments; staff get an alert and can read them in detail.
  • Shift reminders go out automatically so people show up on time.

Announcements

Managers post announcements from Settings → Announcements, and they are no longer all-or-nothing broadcasts.

  • Choose the audience — the whole organization, particular roles, or a position. Every post carries a chip showing who else received it.
  • See who has read it: "Read by 8 of 12", counted against the people it was actually sent to rather than total headcount.
  • Comments let the team reply in place. Anyone can remove their own; managers can remove any, and a removed comment leaves a visible placeholder rather than quietly reshaping the thread.
  • Comments can be switched off for the whole organization in Settings → General → Scheduling. Existing comments stay readable when they are.
An announcement is one-way
For a back-and-forth with one person or a small group, use Messages — direct and group chat with files, reactions, and read receipts.
Who doesn't get pinged
Anyone who has turned off schedule-change notifications in their profile gets none of the schedule alerts, and inactive members are skipped entirely. Draft shifts never notify anyone — only publishing does.
The notification bell keeps everyone up to date.

Messages

Direct and group chats with files, reactions, and read receipts.

The Messages tab is work conversation inside Schedula, so it stops living in a personal group chat. Messages arrive live with no refresh, and the badge on the tab counts conversations waiting on you, not individual messages.

Threads

Start a direct message with one person or a group thread with several — anyone in your organization. Push notifications for messages have their own on/off switch in your notification preferences.

Files, reactions, receipts

  • Attach up to 5 photos or documents to a message, 10 MB each. A caption is optional, so a photo on its own is a complete message. Deleting a message deletes its files with it.
  • React with any emoji — search or browse in the picker, press a reaction again to take it back. The same emoji from several people collects into one pill with a count.
  • Opening a thread marks it read, and the sender sees Seen under their message — a name in a direct message, a count in a group. A conversation left open in a background tab is not marked read until you come back to it.
Read receipts are visible to the whole thread
Everyone in a conversation can see who has read a message, not only the person who sent it, and there is currently no setting to switch that off. Worth telling your team before they notice it themselves.

Privacy and controls

  • There is no admin view of other people's messages. A manager who is not in a thread cannot read it.
  • You can delete your own messages and only your own. A placeholder stays behind so the conversation still reads in order, and nobody else can delete them for you.
  • Staff-to-staff messaging can be switched off for the whole organization in Settings → General → Scheduling. When it is off, staff can still message managers, and conversations that already exist stay readable.

Surveys

Ask the team a question and get the answers back in one place.

Owners and admins write surveys in Settings → Surveys; everyone answers theirs from their own profile. Growth+

  • Free-text, 1–5 scale, and multiple-choice questions, up to 25 per survey.
  • Send it to everyone, to specific roles, or to a position.
  • Each person answers exactly once.

Anonymous surveys

An anonymous response is never linked back to who sent it, and results stay hidden until at least 3 people have replied. This protects against everyone using Schedula — it does not protect against someone with direct access to the database, and the composer says so plainly the moment you switch it on.

Once a survey opens

  • The questions lock. Editing them afterwards would make answers already given meaningless.
  • A closed survey cannot be reopened — ask again with a new one.
  • Managers see totals, not individuals: averages and distributions for scale questions, counts per option for choice questions, and free-text answers shuffled rather than shown in the order they arrived.
Answering is never gated
A survey opened while on Growth stays answerable if the plan later lapses, and results always stay readable. Only creating and opening new ones stops.

Organization settings

Workspace name, locations, branding, and billing.

Settings is where owners and admins configure the workspace. It has five tabs.

  • General Settings — workspace name, timezone and week start; locations (limited by plan: 1 / 3 / 10 / 25, Enterprise unlimited); branding and accent color; scheduling rules and budget; attendance rules; owner alerts; and the plan.
  • Team — members, invitations, and the positions your workspace uses.
  • Announcements — post to a chosen audience, see read counts, and read comments.
  • Surveys — write, open, close, and read the results of internal surveys.
  • Kiosk — pair and unpair the tablets used as shared time clocks.

Settings people miss

Three organization-wide switches live together under General → Scheduling: allow comments on announcements, allow staff-to-staff messaging, and open shift awarding (manager picks, or first come first served). Attendance rules — geofence, photo proof, late and no-show alerts, rounding, pay periods, and the maximum length of an open shift — are under General → Attendance, with time banks alongside them.

Who can open Settings
Only owners and admins see the Settings tab at all — so everything on it, Surveys and Kiosk included, is theirs to run. Only owners manage billing and the plan.
Owners and admins manage the workspace here.

Guides by role

For staff

Everything a team member needs: shifts, availability, clock-in.

As a staff member, here's your whole world in Schedula:

  1. 1Accept your invite and set a password.
  2. 2Set your availability and request any time off so you're never scheduled when you can't work.
  3. 3Check your Schedule to see when and where you're working. Changes appear live.
  4. 4Trust what you see. Your schedule shows published shifts only — you'll get a "Schedule Published" notification when your manager releases a week. Anything they're still drafting stays out of your view until it's final.
  5. 5Pick up or swap shifts from the marketplace when it's available on your team's plan.
  6. 6Clock in and out from your phone (Starter+ teams). It works offline. If your team has a shared tablet, tap your name and enter your PIN instead.
  7. 7Confirm you have seen a new shift so your manager knows the schedule landed, and tick off any tasks the shift carries while you work it.
  8. 8Message your team — direct or group chats, with files and reactions.
  9. 9Answer what is waiting on you in your profile: documents to sign, open surveys, and the kudos your colleagues sent you.
  10. 10Put your shifts in your own calendar with a personal sync link (see Calendar sync).
  11. 11Personalize your profile — theme, accent color, and push notifications.
Your privacy
You only ever see your own data — never billing or other people's private details.
Account Settings — your profile, plus billing and plan for owners.

For managers

Build schedules, manage the roster, approve, and review.

Managers run the day-to-day scheduling and oversight:

  • Build and publish schedules — by hand, from templates, or with auto-scheduling (Scale).
  • Manage the roster — add members, set targets and pay, invite by email, or import a team from CSV.
  • Approve time-off and overtime requests.
  • Review attendance — check, edit, and approve time entries (Starter+).
  • Watch the numbers — hours, coverage, and labor cost in Reports (Starter+).
  • Run payroll — approve and lock a pay period, then export a payroll-ready CSV (Growth+).
  • Announce updates to the whole team, or to the roles or position they concern.
  • Chase what nobody saw — nudge staff who have not confirmed a published shift.
  • Keep people's records — HR profiles, documents, and sign-off (Growth+), plus kudos when someone deserves it.

The weekly rhythm: draft → review → publish

Shifts you create are drafts until you say otherwise, so building a week is no longer a live broadcast. The normal loop is:

  1. 1Draft the week. Add shifts however you like — quick-create, presets, paste, a template, or auto-scheduling. Staff see none of it yet.
  2. 2Review. Check the Needs attention widget on the dashboard for conflicts, unassigned shifts, and time-off requests still waiting on you, and fix them while the week is still private.
  3. 3Publish the week. One click on Publish week (n) releases every draft in that week, notifies each assigned person, emails the schedule, and offers any open shifts to the team.
  4. 4Adjust afterwards as normal. Edits to a published shift stay published and notify the person right away.
What managers can't do
Managers don't have access to organization settings or billing — those are owner/admin areas.

For admins

Everything managers can do, plus settings and roles.

Admins are managers with the keys to the workspace configuration. In addition to everything a manager can do:

  • Open Organization settings — general, locations, branding, alerts.
  • Manage staff and system roles (assign admin, manager, or staff).
  • Add and remove locations and the positions shifts can require.
  • Set the workspace rules others live with: attendance and pay-period settings, time banks, whether staff can message each other, whether announcements take comments, and how open shifts are awarded.
  • Run surveys and pair the tablets used for kiosk clock-ins.
Two limits
Admins cannot grant the owner role and cannot manage billing — those stay with owners.

For owners

Full control including plan, billing, and the workspace itself.

Owners have complete control of the workspace:

  • Everything admins and managers can do.
  • Manage the plan & billing — upgrade, downgrade, and payment. Access changes immediately.
  • Assign any role, including owner (a workspace can have multiple owners).
  • Create or delete the organization.
Billing basics
Paid access is tied to the owner account and every workspace inherits the owner's effective plan. Owners can arrange custom agreements — see the Plans section below, or contact sales.

Plans & billing

Plans & pricing

Compare Starter, Growth, Scale, and Enterprise feature by feature.

Pricing is per workspace and billed to the owner. Every plan starts with a 30-day free trial; higher tiers unlock more capacity and more powerful tools. Annual billing saves 20%.

FeatureStarter
$49 CAD/mo
Growth
$99 CAD/mo
Scale
$150 CAD/mo
Enterprise
Custom
Staff members25 included75 included200 includedUnlimited
Locations31025Unlimited
Core scheduling✓✓✓✓
Schedule templates✓✓✓✓
Availability & time off✓✓✓✓
Shift reminders✓✓✓✓
Shift swap & bidding✓✓✓✓
Email schedule delivery✓✓✓✓
Conflict & overtime checks✓✓✓✓
Attendance✓✓✓✓
GPS & photo clock-ins—✓✓✓
Analytics dashboard✓✓✓✓
AI auto-scheduling——✓✓
Advanced reporting—✓✓✓
Pay periods & payroll export—✓✓✓
Time banks (leave balances)—✓✓✓
Employee HR profiles & documents—✓✓✓
Priority support——✓✓

Which plan is right?

  • Starter — growing teams that want shift swapping, emailed schedules, conflict checks, attendance, and analytics.
  • Growth — teams that need GPS-verified attendance and advanced reporting. Most popular.
  • Scale — multi-location operations that want AI scheduling and priority support. Up to 200 staff, 25 locations.
  • Enterprise — organizations past Scale's limits that need custom staff/location caps and contract terms. Contact sales.
Upgrading & downgrading
Owners change Starter/Growth/Scale plans anytime in Settings → billing; access updates immediately. Enterprise is arranged directly with our team — contact sales rather than selecting it in-app.

Help

FAQ

Quick answers to the most common questions.

How does the 30-day free trial work?

Every plan starts with a 30-day free trial. A payment method is required up front, but you're not charged until the trial ends unless you cancel first.

Can staff see billing or other people's info?

No. Staff only ever see their own schedule, availability, and attendance.

Does Schedula work offline?

The installed app loads offline and clock-ins queue offline, then sync automatically when you're back online.

How do I get push notifications?

Install Schedula to your home screen and allow notifications when prompted.

Can a workspace have more than one owner?

Yes. Owners can grant the owner role to others; admins cannot.

How do I change plans?

The owner opens Settings → billing. Upgrades and downgrades take effect immediately.