Loading...
Help Center / Getting Started / Scheduling Teams Overview

Scheduling Teams Overview

Scheduling Teams Overview

Organize your workforce into location, department, and custom teams so every schedule, shift, and swap operates within the right group of people.


What Are Scheduling Teams?

Scheduling Teams let administrators define who belongs to which scheduling unitβ€”by location, department, skill, or any custom criteriaβ€”and then use those teams as the backbone for schedule creation, shift assignment, and open-shift eligibility. Instead of manually curating shift rosters, teams resolve their members automatically from organizational data and keep memberships up to date in the background.

Core Value Proposition:

  • 🎯 Targeted Scheduling β€” Assign shifts to the right people by scoping schedules to a specific team
  • 🀝 Flexible Membership β€” Rule-based criteria (department, location, skills) or hand-picked members
  • πŸ“Š Always Current β€” Materialized membership tables refresh automatically so you never schedule the wrong person
  • πŸ’° Bulk Operations β€” Create dozens of teams in seconds from your existing org structure

At a Glance

⏱️ Setup Time 🏷️ Team Types πŸ”„ Swap Scopes πŸ“± Mobile Ready
2 minutes 3 (Location, Department, Custom) 3 (Same Team, Same Location, Any) βœ… Yes

Perfect For:

  • 🏒 Multi-location businesses β€” Auto-create a team per site so shifts stay location-specific
  • πŸ‘₯ Department-based scheduling β€” One team per department with membership derived from HR data
  • πŸ“ˆ Cross-functional teams β€” Combine departments, locations, and skills into custom teams

How It Works

Team Resolution Flow

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                    SCHEDULING TEAM MEMBERSHIP                          β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                                                                         β”‚
β”‚   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”             β”‚
β”‚   β”‚  DEFINE TEAM │───▢│ RESOLVE      │───▢│ USE IN       β”‚             β”‚
β”‚   β”‚  (Rules or   β”‚    β”‚ MEMBERS      β”‚    β”‚ SCHEDULING   β”‚             β”‚
β”‚   β”‚  Specific)   β”‚    β”‚ (Auto)       β”‚    β”‚              β”‚             β”‚
β”‚   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜             β”‚
β”‚         β”‚                    β”‚                    β”‚                     β”‚
β”‚         β–Ό                    β–Ό                    β–Ό                     β”‚
β”‚   Location, Dept,     4-Layer Cache:       Shifts, Schedules,          β”‚
β”‚   Skills, or          Request β†’ Materialized Swaps & Claims            β”‚
β”‚   Hand-Picked         β†’ TTL β†’ Live SQL                                 β”‚
β”‚                                                                         β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Integration Ecosystem

                         β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                         β”‚ SCHEDULING TEAMS β”‚
                         β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                  β”‚
       β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
       β–Ό          β–Ό               β–Ό              β–Ό              β–Ό
 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
 β”‚ Schedules β”‚ β”‚  Shifts   β”‚ β”‚  Swap /   β”‚ β”‚  Notifi-  β”‚ β”‚ Locations β”‚
 β”‚           β”‚ β”‚           β”‚ β”‚  Claims   β”‚ β”‚  cations  β”‚ β”‚ & Depts   β”‚
 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Key Features

🏷️ Three Team Types

Scheduling Teams come in three flavors, each suited to different organizational needs:

Type How Members Are Determined Auto-Managed?
Location All users assigned to a physical location βœ… Yes β€” synced from location data
Department All users in an organizational department Rule-based, auto-derived
Custom Any combination of departments, locations, skills, or hand-picked users Rule-based or specific users

Use Case: A hospital might use Location teams for each campus, Department teams for nursing vs. radiology, and a Custom team for a cross-campus night-shift rotation that requires specific certifications.


⚑ Quick Setup β€” Bulk Team Creation

Create teams at scale from your existing organizational data without manual entry:

Quick Setup Option What It Creates Example
Per Department One team per active org department Engineering, Marketing, Operations
Per Location One team per active physical location Downtown Office, Warehouse A
Per Location Γ— Department One team for each department at each location Engineering β€” Downtown, Marketing β€” Warehouse A

Each option shows a preview of teams to be created before you confirm, and automatically skips teams that already exist.

Auto-Create Toggles: Enable auto-creation so new departments or locations automatically get their own scheduling team β€” no admin intervention needed.


πŸ”§ Rule-Based & Specific-User Membership

Teams support two membership modes:

Rule-Based (AND logic):
Combine up to three criteria types. Members must match all specified rules:

Rule Type Operator Example
Department is β€œEngineering”
Locations is any of β€œDowntown” or β€œMidtown”
Skills / Certificates includes any of β€œForklift License”, β€œFirst Aid”

Specific Users:
Hand-pick individual team members when rules don’t fit your use case.

πŸ’‘ Pro Tip: The team type (Department vs. Custom) is automatically derived from your rules β€” you never have to pick it manually. A single department rule creates a Department team; any other combination creates a Custom team.


πŸ”„ Swap Scope β€” Shift Eligibility Control

Each team has a Swap Scope setting that determines who can pick up or swap shifts assigned to that team:

Swap Scope Who Can Claim/Swap Best For
Same Team Only members of this specific team Strict role separation
Same Location Anyone at the same physical location Location-flexible roles
Any (Unrestricted) Any eligible employee in the business Maximum coverage flexibility

This integrates directly with the shift claim and swap system β€” when an employee tries to claim an open shift, the system checks the team’s swap scope to determine eligibility.


πŸ‘₯ Member Management

Materialized Membership Table

Team memberships are pre-computed and stored in a materialized table for fast lookups. The system uses a 4-layer resolution path (checked in order, first hit wins):

  1. Request-scoped memo β€” Zero DB cost, auto-reset per request
  2. Materialized table β€” Indexed read from pre-computed data (refreshed every 6 hours)
  3. TTL cache β€” 5-minute cached ID array
  4. Live SQL resolution β€” Single query with JOINs as fallback

Manual Overrides

Even with rule-based teams, you can override membership for individuals:

Override Effect
Manual Include Force-add a user who doesn’t match the rules
Manual Exclude Remove a user who does match the rules

Refresh Members

Use the Refresh Members action from the index page to trigger a full membership recalculation across all active teams, with a live progress bar.


πŸ—οΈ Parent-Child Team Hierarchy

Teams can be organized into a hierarchy by setting a Parent Team:

  • Sub-teams appear as tabs in the schedule view
  • Useful for organizing large departments into sub-units (e.g., β€œEngineering” parent with β€œFrontend”, β€œBackend”, β€œDevOps” children)
  • Parent must belong to the same business
  • Only root-level (top-level) teams can be selected as parents

πŸ‘” Manager & Co-Manager Assignment

Each team supports dedicated management roles:

Role Description
Primary Manager Single designated manager for the team
Co-Managers Additional managers who share oversight
Derived Managers Automatically pulled from location manager assignments

If no explicit manager is assigned, managers are derived from the team’s associated locations.


πŸ“₯ CSV Import / Export

Manage teams in bulk through CSV:

Export: Download all teams as a CSV with columns for id, name, group_type, active, swap_scope, description, parent_team, and manager_email.

Import Workflow:

  1. Export your current teams
  2. Edit the CSV in Excel or Google Sheets
  3. Import the edited file β€” existing teams matched by id are updated; rows without an id create new teams

The import modal includes a live file preview before submission.


The teams index page provides powerful filtering:

Filter Options
Search Free-text search by team name
Type All Types, Location, Department, Custom
Status All, Active, Inactive

Results are paginated (25 per page) and sortable.


πŸ“Š Team Statistics

The index table displays key metrics for each team at a glance:

Metric Description
Members Count of resolved team members (clickable to view list)
Status badges Active/Inactive, In Use (upcoming shifts), Past Only
Type badge Location, Department, or Custom
Location info Associated locations displayed inline
Manager Assigned manager name

πŸ”— Integrations

Scheduling Teams are the connective tissue between organizational data and shift operations:

Integration How It Works
Shifts Each shift can be scoped to a scheduling team; the team determines eligible assignees and swap candidates
Schedules Schedules can be associated with a team for team-specific schedule views
Shift Claims The team’s swap scope controls who can claim open shifts
Notifications Shift notifications use the team name as context for non-location teams
Locations Location teams are auto-synced; location changes auto-update the team
Departments Department teams derive membership from org department assignments
Skills Custom teams can require specific skills or certifications

πŸ”” Notifications

Type Description
Shift Assignment Notifications display the scheduling team name as context for department and custom teams
Shift Claim Claim notifications use team context (team name for non-location teams, location name otherwise)

πŸ“‹ Audit Trail

All scheduling team changes are tracked with Paper Trail versioning:

  • Team creation, updates, and deletions are logged
  • Each version records the business context
  • Useful for compliance and troubleshooting membership changes

User Roles & Permissions

Role Capabilities
Admin / Super Admin Full CRUD on all teams, Quick Setup, bulk operations, CSV import/export, auto-create toggles, refresh members
Manager View teams they manage, see member lists
Employee See their team assignment via shifts and schedules

How We Compare

See how MangoApps Workforce Scheduling Teams stack up against leading workforce management solutions:

Feature MangoApps Workforce UKG (Kronos) When I Work Deputy
Location-based teams βœ… βœ… βœ… βœ…
Department-based teams βœ… βœ… βœ… βœ…
Custom rule-based teams βœ… βœ… ❌ ❌
Skills-based membership βœ… βœ… ❌ ❌
Bulk team creation from org data βœ… ❌ ❌ ❌
Auto-create on new dept/location βœ… ❌ ❌ ❌
CSV import/export βœ… βœ… ❌ ❌
Configurable swap scope per team βœ… ⚑ Limited βœ… βœ…
Parent-child team hierarchy βœ… βœ… ❌ ❌
Materialized membership (performance) βœ… βœ… ❌ ❌
Legend: βœ… Included ❌ Not Available ⚑ Limited

Why MangoApps Workforce?

  • πŸ”— Unified Platform β€” Scheduling Teams work seamlessly with Shifts, Schedules, Locations, and Skills in one system
  • πŸ’° No Hidden Costs β€” All team features included, no per-module pricing
  • ⚑ Quick Setup β€” Bulk-create teams from org data in seconds, not hours of manual configuration

Getting Started

For Administrators

  1. Navigate to Admin β†’ Scheduling Teams (/admin/businesses/{id}/scheduling_groups)
  2. Use Quick Setup to bulk-create teams from your existing departments and locations
  3. Enable Auto-Create toggles so new departments/locations get teams automatically
  4. Review teams in the table β€” edit swap scope, assign managers, and configure membership rules as needed
  5. Use Refresh Members to trigger an immediate membership recalculation

For Managers

  1. Your assigned teams appear in the schedule and shift views
  2. When creating schedules, select a scheduling team to scope the schedule
  3. Member lists for your teams are available via the member count link on the teams page

For Employees

  1. Your team membership is automatic β€” based on your location, department, and skills
  2. Open shifts available to you are filtered by your team’s swap scope
  3. Check My Shifts to see shifts assigned through your scheduling team

Best Practices

  • βœ… Start with Quick Setup β€” Bulk-create teams from departments and locations before creating custom teams
  • βœ… Enable Auto-Create β€” Turn on auto-creation toggles so new org units get teams without manual work
  • βœ… Use rule-based membership β€” Let membership derive from org data rather than hand-picking users; rules stay current automatically
  • βœ… Set appropriate swap scopes β€” Use β€œSame Team” for role-specific shifts, β€œSame Location” for flexible roles, and β€œAny” sparingly
  • βœ… Assign managers explicitly β€” While managers are auto-derived from locations, explicit assignment gives clearer ownership
  • βœ… Review members after org changes β€” Use Refresh Members after large HR changes (reorgs, bulk hires) to ensure accuracy

Frequently Asked Questions

Q: How are location teams different from other teams?
A: Location teams are auto-managed β€” they’re created automatically from your Locations data and cannot be deleted. Their name syncs from the location, and members are all users assigned to that location. You can still edit their description, swap scope, and parent team.

Q: What happens when I add a new department or location?
A: If you’ve enabled the Auto-Create toggle for that team type, a corresponding scheduling team is created automatically. Otherwise, you can use Quick Setup to create it manually.

Q: Can a user be in multiple scheduling teams?
A: Yes. Users can belong to multiple teams β€” for example, a user at the β€œDowntown” location in the β€œEngineering” department would be in both the Downtown location team and the Engineering department team.

Q: How often are team memberships refreshed?
A: Memberships refresh automatically when a team is created or updated, and a background job rechecks stale teams (older than 1 hour) periodically. You can also trigger an immediate refresh from the Actions menu.



Scheduling Teams β€” the foundation for organized, accurate, and efficient workforce scheduling.

Ask AI Product Advisor

Hi! I'm the MangoApps Product Advisor. I can help you with:

  • Understanding our 40+ workplace apps
  • Finding the right solution for your needs
  • Answering questions about pricing and features
  • Pointing you to free tools you can try right now

What would you like to know?