Sonnical User Guide

Everything you need to set up your business, plan the shifts and let your team organise itself. Updated for version 1.04 (September 2026).

Introduction

Sonnical is a shift planner for any business that runs on shifts: hospitality, retail, clinics, services. You use it from your phone (iOS and Android) and from the web. The mobile app is the everyday tool for the whole team; the web adds the management dashboard, the full-screen schedule and analytics.

📱

Mobile first

Calendar, clock-in, time off, swaps and every management task from the phone.

🤖

Automatic shifts

Generate and assign whole weeks or months with three strategies: optimal, rotational and basic.

📊

Web as support

Dashboard with uncovered shifts, weekly schedule, staff requests and exportable analytics.

👥

Self-managed team

Employees swap and give away shifts among themselves; you only approve.

Who is who

RoleWhat they can do
AdminThe account owner. Sets up the business, manages the team, generates and assigns shifts, approves requests for any position and manages the subscription.
Sub adminA manager. Creates employees, generates shifts and approves swaps and time off for their own position.
UserEmployee. Sees their calendar, clocks in, requests time off, swaps or gives away shifts and shares availability.
FreelancerHourly or per-module staff. Only receives shifts on the days they have marked as available.
💡
How to read this guide

Each section explains what a feature is for, how to do it step by step and what to keep in mind. Screenshots are from the iOS app unless the web is stated; Android has the same screens.

Creating your account

The first account created is the administrator's. Employees do not sign up on their own: they join through the invitation link the administrator sends them (see Team).

Sign-in screen: email and password, Apple, Google or invitation code.
Sign-in screen: email and password, Apple, Google or invitation code.
Email sign-up: name, username, email and password.
Email sign-up: name, username, email and password.
  1. Download Sonnical from the App Store or Google Play, or open the web app at sonnical.com.
  2. Choose Continue with Apple, Continue with Google or or sign up with email.
  3. With email: enter your name, a username, your email and a password of at least 8 characters with an uppercase letter, a lowercase letter and a number.
  4. Tap Register. You go straight into the setup wizard.
✉
Email verification

With email and password you receive a verification email. You can keep setting up the business meanwhile; a few features (such as inviting employees by email) stay locked until you confirm.

🔑
Are you an employee?

Do not create a new account. Ask your manager for the invitation link or use I have an invitation code on the sign-in screen. You will sign in with Google or Apple, no password needed, and your shifts will already be there.

Set up your business in 5 minutes

Right after signing up, Sonnical asks how you want to start. There are three paths and all of them end on a review screen where you can change anything before creating it.

Three ways to start: template, AI description or manual.
Three ways to start: template, AI description or manual.

Option A: a template for your sector

Healthcare, Hospitality or Retail.
Healthcare, Hospitality or Retail.
Template summary: positions, your role, areas and shifts.
Template summary: positions, your role, areas and shifts.
Tap Edit to add or remove positions, areas and shifts.
Tap Edit to add or remove positions, areas and shifts.
  1. Tap Templates and choose your sector.
  2. Review the summary: positions, work areas, shifts with their hours and which position is yours.
  3. If something does not fit, tap Edit: rename the business, add or remove positions and areas, adjust each shift’s hours.
  4. Tap Create and start.

Option B: describe your business and let AI build it

Write in your own words: name, shifts, positions, areas and employees.
Write in your own words: name, shifts, positions, areas and employees.
AI proposes the setup; nothing is created until you confirm.
AI proposes the setup; nothing is created until you confirm.

Write in any language and format. An example that works well: shifts "morning and afternoon, open 9 to 8" (AI splits the opening hours between the shifts), positions "dentist, hygienist, receptionist", areas "room 1, room 2, reception", employees "3" or a list of names. Review the proposal and tap Create and start.

💡
Initial setup

With templates and with AI, every area starts with all positions and one slot per position. Afterwards, adjust in Settings → Manage your Locations which positions belong to each area and how many slots each one has (see Locations and areas).

Option C: manual

Manual opens the step-by-step wizard: shifts and their duration, positions, business details, work areas and employees. Same content as the other two options, but you type everything yourself.

Employees and invitations

Employees are created as pending; each one has an invitation link.
Employees are created as pending; each one has an invitation link.
End of the wizard: you can start using Sonnical.
End of the wizard: you can start using Sonnical.

The employees you list are created as pending: they exist in the team (and can already receive shifts) but have not joined yet. Tap Link next to each one to copy or share the invitation through WhatsApp, email or however you like. As soon as they open it they sign in with Google or Apple and see their shifts. You can do it now or later from My Supervised Users.

Key concepts

Five ideas that explain how Sonnical organises work. Worth reading before you generate shifts.

ConceptWhat it isExample
LocationA venue or site. You can have several depending on your plan.Café Central
Work areaA zone of the location with its own shifts and positions.Dining room, Kitchen, Bar
PositionThe job a person does. Each employee has exactly one position.Waiter, Cook, Barista
SlotHow many people of a position are needed in an area per shift. Defined by repeating the position in the area.Dining room: Waiter(2), Manager
ShiftA named time band with a duration. The same shifts apply to every area.Morning 7-15, Afternoon 15-23, Night 23-7

The weekly quota

Each employee has contracted hours (40 by default) and a contract percentage. Sonnical turns that into a quota: shifts per week = contracted hours ÷ shift duration, plus 1 extra shift when overtime is enabled (2 for full-time). Automatic assignment and the AI assigner never exceed that quota, neither in shifts nor in hours.

📅
Week starting Monday or Sunday

The quota is counted per calendar week. In Profile you choose whether your week starts on Monday or Sunday; every calculation and the calendar follow it.

What Sonnical does not do for you

  • It does not enforce minimum rest between shifts: a night shift followed by a morning shift is valid. If you need that rule, handle it when reviewing the schedule.
  • It does not decide which positions belong to each area: review it in Manage your Locations.
  • It never creates shifts in the past: everything generated or assigned is from today onwards.

Calendar and views

The Main tab is your calendar. For an employee it shows their shifts and time off; for an administrator it also opens the whole team's schedule.

Monthly view for an employee: shifts, holidays in green and availability dots.
Monthly view for an employee: shifts, holidays in green and availability dots.
The ··· button switches between monthly, weekly and schedule views.
The ··· button switches between monthly, weekly and schedule views.
Weekly view: the detail of each day.
Weekly view: the detail of each day.
  • Monthly: at a glance, with the area name on each shift. Days with approved time off are marked.
  • Weekly: swipe to change week and tap a day to see its shifts with times and duration.
  • Schedule (administrators and sub admins): every slot of a position, day by day, with who covers it. See AI Assign.
Shift detail: times, area, location and notes.
Shift detail: times, area, location and notes.

Tap any shift to see its detail. Administrators can delete it from here; employees use it as the starting point to request a swap (see Messages).

On the web

Web calendar with the side panel for the selected day.
Web calendar with the side panel for the selected day.

The web calendar has month and week views plus a side panel with the selected day's shifts. To manage the team use the Schedule tab (see Web).

Time off and holidays

Employees request time off from the app; the administrator (or the sub admin of that position) approves or rejects it. Approved time off blocks automatic assignment on those days and shows in the calendar.

Request tab: your requests and their status.
Request tab: your requests and their status.
New request: days, affected shift and reason.
New request: days, affected shift and reason.

Requesting time off (employee)

  1. Open the Request tab (or Settings → Request Time Off).
  2. Tap New time off request and tap the days on the calendar. You can select several.
  3. Choose the affected shift or All day, and the reason: personal, holidays, sick leave, studies…
  4. Tap Save request. It stays pending until reviewed.
🌴
Holidays

Holiday days are deducted from your yearly balance (shown in your profile) when the administrator approves them.

Approving (administrator)

Approval tab: pending shift changes and time off requests, with how many employees are already out that day.
Approval tab: pending shift changes and time off requests, with how many employees are already out that day.
On the web: Staff Requests.
On the web: Staff Requests.

The Approval tab groups everything pending. Each time off request shows how many employees of the same position will already be out that day, so you can decide with context. Accept or Reject notifies the employee right away.

⚙
Without approval

If you turn off Require approval for permissions in Settings, time off is approved automatically when requested.

Availability and freelancers

There are two kinds of staff and Sonnical treats them differently when assigning:

  • Regular staff: assumed available always, unless they have approved time off.
  • Freelancers: only receive shifts on the days and shifts they have marked as available. Set when creating the user or in their profile (Freelancer).
A freelancer sees the Availability tab instead of Request.
A freelancer sees the Availability tab instead of Request.
Their available days for the month.
Their available days for the month.
Add availability: dates and shift (or all day).
Add availability: dates and shift (or all day).
  1. Open the Availability tab.
  2. Tap Add availability, tap the days and choose the shift or All day.
  3. Tap Save availability. Remove a day with the ✕ on its card.

When generating shifts, the optimal model prioritises regular staff and uses available freelancers for what is left. In rotation, freelancers are not part of the cycle: they fill gaps on the days they are available.

⚙
Administrator setting

The Allow availability submission option in Settings turns this feature on or off for the whole team.

Clocking in and out

The Clock In tab shows today's shift and lets you clock in and out. You can only clock in if you have a shift assigned that day.

After clocking in: actual time, running duration and the clock-out button.
After clocking in: actual time, running duration and the clock-out button.
  1. Open Clock In. You see today’s shift with its planned times.
  2. When you arrive, tap Clock IN. When you finish, Clock OUT.
  3. If you work two shifts back to back (say morning and afternoon) the pattern is consecutive: one clock-in at the start and one clock-out at the end.
  4. If your shifts are not consecutive, clock in and out for each one.
StatusMeaning
Not startedYou have not clocked in yet.
Clocked in …You are in; the duration counter is running.
CompletedClock-in and clock-out recorded.
With issueA clock-out is missing or the hours do not match; the administrator sees it flagged.
⏰
If you forget to clock out

Sonnical closes the record automatically at the shift’s planned end time and flags it for review. Tell your manager if the real hours were different.

⚙
For the administrator

The Require clock in/out option in Settings enables time tracking. On the web, Clock In/Out shows the team’s clock-in analysis.

Messages: swapping and giving away shifts

The Chats tab is not a free chat: it is the system for employees to swap or give away shifts among themselves, with the administrator's approval when configured that way.

List of requests with their progress: sent → accepted → admin review.
List of requests with their progress: sent → accepted → admin review.
Detail of a swap: your shift, the offered shift and the actions.
Detail of a swap: your shift, the offered shift and the actions.

Request types

TypeWhat it isWho receives it
Direct swapYou offer one of your shifts to a specific colleague in exchange for one of theirs.Only that person.
Direct give awayYou hand one of your shifts to a specific colleague, nothing in return.Only that person.
Posted swapYou post that you want to swap a shift; anyone in your position can offer one of theirs.Your whole position.
Posted give awayYou post a shift you want to give away; whoever wants it claims it.Your whole position.
The new message button: direct or posted.
The new message button: direct or posted.
Direct request: your shift, type and colleague. It shows who is available that day.
Direct request: your shift, type and colleague. It shows who is available that day.
Posted message: title, shift, type and notes.
Posted message: title, shift, type and notes.

How a swap works

  1. Employee A creates the request (direct or posted) choosing their shift.
  2. Employee B accepts it from Chats, offering their shift if it is a swap.
  3. If the business requires approval, the request goes to the administrator’s Approval tab (or the sub admin of that position). On approval the shifts are swapped; on rejection everything stays as it was.
  4. If no approval is required, the change applies the moment B accepts.
🔒
Only your own shifts

An employee can only give away or swap shifts that are theirs, and can only claim shifts offered to them or that are free. Nobody can take a shift away from someone else.

Generate and assign shifts

Settings → Generate Events creates every slot of a period (days × areas × shifts × slots) and assigns them with the strategy you choose. It is the usual way to plan a week, a month or more.

Strategy, date range and positions.
Strategy, date range and positions.
The three strategies.
The three strategies.
Areas and shifts to include.
Areas and shifts to include.
  1. Pick the strategy: Optimal Balance, Automatic Rotation or Basic Assignment (see below).
  2. Set From and To. Only dates from today onwards are accepted.
  3. Turn on Exclude weekends if you are closed on Saturdays and Sundays.
  4. Tick the positions you want to create shifts for. Only areas that have those positions appear.
  5. Expand each area and tick the shifts to generate in it.
  6. Tap Generate & Assign Events and wait for the summary.
Summary: slots created, assigned, percentage, time, per-person breakdown and unassigned shifts per position.
Summary: slots created, assigned, percentage, time, per-person breakdown and unassigned shifts per position.

What you can rely on

  • No duplicates. If you generate the same period twice, or overlapping periods, each slot exists only once. You can re-run generation safely.
  • Existing assignments are kept. A shift that already has a person is never touched. Only empty slots get filled.
  • The whole context counts. The weekly quota considers the shifts each person already has, in any area, even outside the chosen range.
  • Only what you selected. Only the positions, areas and shifts you ticked are created and assigned. Tick everything and everything is included.
  • Future only. Shifts whose time has already passed are ignored.
  • New slots. If you add a slot to an area (say, a second Waiter) and generate again, only the new slot is created; existing ones stay as they are. If you remove a slot, existing shifts are kept until you delete them.
⚠
Unassigned shifts

If the summary shows unassigned shifts it is because nobody fits: everyone in the position is at their quota, absent, without availability (freelancers) or there are simply more slots than people. Review the schedule and cover them by hand, with freelancers or later with AI Assign.

The three strategies

StrategyHow it distributesUse it when
Optimal BalanceDistributes so everyone gets close to their contracted hours, balances the load, avoids overlaps and prefers regular staff over freelancers. May take a couple of minutes with many shifts.You want the fairest distribution without a fixed pattern.
Automatic RotationEach person works a week of mornings, then a week of afternoons, then nights… across each area. See Rotation.Your team rotates shifts and you want predictability.
Basic AssignmentWeighted random distribution (fewer shifts, higher probability), respecting quotas and overlaps.You need something quick and simple.

How rotation works

Rotation is computed per position. For each position, Sonnical builds a list of cells: one per area × slot × shift, ordered by area and, within each area, by the shift start time. Each person occupies one cell for a week and moves to the next cell the week after.

With one area and Morning, Afternoon and Night shifts, a person's sequence is: morning → afternoon → night → morning… With several areas, they go through the shifts of one area first and then move to the next: Dining room morning → Dining room afternoon → Dining room night → Terrace morning → …

More people than cells: wildcards

If there are more people than cells (say 4 cooks for 3 shifts), nobody rests a whole week. The extra people that week are wildcards: they work several days spread across the week, covering in turn the cells of the regular holders, who get those days off. Roles rotate with the week: the wildcard moves to mornings next week, and so on.

Fewer people than cells

The leftover cells stay uncovered and rotate every week, so the same shift is not always the one missing. Cover them with freelancers or by hand.

Absences and continuity

  • If a holder is off for a day (approved time off), that week’s wildcard covers them with priority.
  • If someone is on holiday for the whole week, their cells stay free and, when they come back, they rejoin at the position the cycle has reached. Nobody else’s rotation changes.
  • When generating a new week, Sonnical looks at the last four assigned weeks to continue the rotation where it was. It does not matter which device you generate from: the result is the same.
  • Weekly quota and overlaps are respected in rotation too.
💡
Tip

Generate rotation in blocks of 4 to 8 weeks and, once published, adjust by hand whatever is needed. Later generations respect what you changed.

AI Assign from the schedule

The schedule shows, for one position, every slot of the visible week and who covers it. The AI Assign button proposes an assignment for that week which you review before anything is saved.

Waiter schedule: one row per area and shift, one cell per slot.
Waiter schedule: one row per area and shift, one cell per slot.
The proposal is drawn on screen with the bar Reject · assigned/proposed · Confirm.
The proposal is drawn on screen with the bar Reject · assigned/proposed · Confirm.
  1. In Main tap ··· → Schedule View and pick the position with the selector in the corner.
  2. Navigate to the week you want to cover.
  3. Tap AI Assign. Sonnical creates any missing slots, fills the empty ones with the optimal model and draws them as a proposal.
  4. Review. Tap Confirm to save or Reject to leave everything as it was.

What it takes into account

  • It creates slots only in areas that have that position, and as many as the slots defined.
  • Existing slots without a person are part of the proposal; those already assigned are never touched, but they count towards that person’s quota.
  • It never proposes anything for shifts that have already ended.
  • If everyone is at their quota the proposal can be 0: that is correct, it means nobody can take more shifts that week.
On the web, the proposal is reviewed in the right panel with the per-person breakdown.
On the web, the proposal is reviewed in the right panel with the per-person breakdown.

Team and permissions

Settings → My Supervised Users is the team hub: view, invite, add, edit and deactivate people.

Supervised users with filters by status and role.
Supervised users with filters by status and role.
Editable employee profile.
Editable employee profile.

Two ways to bring someone in

Invite: optional name, position and freelance flag.
Invite: optional name, position and freelance flag.
Invitation link to share or send by email.
Invitation link to share or send by email.
WayWhen to use itHow the employee joins
Invite (recommended)Whenever the person has a Google or Apple account.They open the link (expires in 30 days) and sign in without a password. Until then they are pending, but can already receive shifts.
Add userWhen you want to set their email and password yourself.They get a verification email and sign in with email and password. They can change it later.

What you configure in the profile

  • Position and role (User or Sub admin).
  • Contracted hours and contract percentage: they define the weekly quota (see Key concepts).
  • Overtime: allows 1 extra shift per week (2 for full-time).
  • Max on-calls: cap on long shifts (over 12 h) per week.
  • Freelancer: turns them into a freelancer.
  • Holidays: days per year and days already taken.

Activating and deactivating

A deactivated employee cannot sign in and receives no shifts, but their history is kept. Pending ones (invitation not opened yet) do receive shifts. To remove someone completely, use Delete user in their profile.

👤
Sub admins

A sub admin manages their own position: creates employees (never administrators), generates shifts and approves swaps and time off for their position. They cannot touch the subscription or the locations.

The same management on the web.
The same management on the web.

Locations, areas, shifts and positions

Everything structural lives in Settings: Manage your Locations, Manage your shifts and Manage your Positions. Changing any of these affects what is generated from that moment on, never the shifts already created.

Locations and, expanded, their areas with positions (slots in brackets) and shifts.
Locations and, expanded, their areas with positions (slots in brackets) and shifts.
Location detail: data and work areas.
Location detail: data and work areas.
New area: name, shifts it opens and positions with their slots (+/−).
New area: name, shifts it opens and positions with their slots (+/−).

Slots: how many people per shift

When adding or editing an area, each position has a counter. Waiter 2 means that area needs two waiters on every shift. Sonnical creates two slots per shift and assigns them to two different people.

💡
Example

A surgical service with 4 operating rooms and 2 nurses per room is set up as 4 areas (Room 1…4) with Nurse(2) in each. Generation and rotation work the same with any number of areas and slots.

Shifts

Shift configuration: standard duration and times.
Shift configuration: standard duration and times.

Define the standard duration (used to compute the weekly quota) and each shift with its start and end time. A shift that ends before it starts (Night 23:00-7:00) is understood to cross midnight. Shifts longer than 12 hours are treated as on-calls.

Positions

Position manager.
Position manager.

Add or remove positions. Each employee has one and each area decides which ones it admits. If you remove a position that has people assigned, reassign them first.

On the web: locations and areas.
On the web: locations and areas.

Administrator settings

Settings: profile, user section, users management, events and locations.
Settings: profile, user section, users management, events and locations.
General settings: approvals, availability, clock-in and subscription.
General settings: approvals, availability, clock-in and subscription.
SettingEffect
Require approval for changesSwaps and give-aways between employees need your approval. Off, they apply when accepted.
Allow availability submissionFreelancers can mark their available days and assignment takes them into account.
Require clock in/outEnables time tracking for the team.
Require approval for permissionsTime off needs your approval. Off, it is approved automatically.
Reset initial setupRuns the setup wizard again.
AppearanceSystem, light or dark.
Language (web)Spanish or English. On mobile the app follows the phone language.

Your profile

Administrator profile: details, position, contract and holidays.
Administrator profile: details, position, contract and holidays.

The administrator also has a position and a contract: they count as one more team member and can receive shifts of their position. Here you also choose whether the week starts on Monday or Sunday.

Subscription and plans

Starter, Growth and Business plans, monthly or yearly.
Starter, Growth and Business plans, monthly or yearly.
Warning when the current plan does not cover the number of users.
Warning when the current plan does not cover the number of users.
PlanUsersLocations
Free61
Starter251
Growth503
Business1005
  • Who counts: the administrator and active employees. Pending ones (invitation not opened) and deactivated ones do not count.
  • When you go over the limit, the app warns you before the action that would cause it (for example, activating one more employee) and offers to upgrade the plan or adjust the team.
  • Managed from Settings → Manage subscription on iOS, Android or web. It renews automatically and is cancelled from the store or portal where it was purchased.
💰
More than 100 users or 5 locations

Contact us from the plans screen (Contact us) and we will prepare a custom plan.

The web: dashboard, schedule and analytics

Sign in at sonnical.com/app with the same account. The web is meant for the administrator at a desk: big screen, exports and analytics. Employees can use it too, but the phone is their natural tool.

Dashboard

Dashboard: uncovered shifts today and this week, ready to resolve.
Dashboard: uncovered shifts today and this week, ready to resolve.

Schedule

Weekly schedule per position: each cell is a slot. Click a cell to edit it or create the shift.
Weekly schedule per position: each cell is a slot. Click a cell to edit it or create the shift.

It is the mobile schedule at full size. Position selector, week navigation, AI Assign and editing of every cell (assign, change or leave without user).

Analytics

Period summary: shifts, hours, coverage, utilisation and load balance.
Period summary: shifts, hours, coverage, utilisation and load balance.
Users tab: top performers, low activity, engagement.
Users tab: top performers, low activity, engagement.
  • Weekly, monthly, quarterly, biannual and yearly periods. Data is computed automatically when each period closes (every Sunday, the 1st of each month…).
  • Recalculate forces the calculation of the last closed period; Export CSV downloads the data.
  • Tabs: Overview, Users, Workplaces, Positions, Compliance (clock-ins) and Trends.
📊
No data

Analytics needs complete periods with shifts. A newly created business sees "No data available" until its first week closes.

Staff requests and users

Staff Requests is the mobile Approval tab. Settings contains the same management of users, locations, shifts and positions as the app.

Settings on the web, with the language selector.
Settings on the web, with the language selector.

Frequently asked questions

I generated shifts twice and nothing was duplicated. Is that normal?

Yes. Each slot (day, area, shift and slot number) exists only once. Re-running generation only fills what is missing.

Why are some shifts left unassigned?

Because nobody in the position can take them: weekly quota reached, approved time off, freelancer without availability that day or more slots than people. Check the generation summary: it shows how many are left per position.

An employee has two shifts on the same day.

It is valid as long as they do not overlap (for example morning and night). Sonnical does not enforce minimum rest; if you do not want it, change it in the schedule.

An employee cannot see their shifts.

Check they are active, their position matches the shifts' position and they have opened the invitation. If they just joined, close and reopen the app.

Can I have a second administrator?

No. Each business has one administrator. Appoint sub admins to delegate the management of each position.

What if I change the shift duration or contracted hours?

The weekly quota changes from that moment on. Shifts already assigned do not move.

I need help.

Settings → Support from the app, or write to sales@sonnical.cloud.