Security guard scheduling software is a tool that builds, publishes and changes guard rosters by site, post and shift, so a security company can see cover for every site at a glance instead of rebuilding the week from messages and spreadsheets. It works best when it starts from written post orders, holds licence and availability records for each guard, and gives managers a clear way to fill a gap when a guard calls out. This guide shows how to set that up, run a 24-hour site without exhausting guards, handle call-outs, and choose between a general scheduling tool and a patrol-first tool.
Quick steps:
- Write a post order for each site, with post times, duties, and the licence or training each post needs.
- Record each guard once, with sites they can work, availability, and licence expiry dates.
- Build the roster by site first, then by guard, and check cover, availability, and hours before you publish.
- Publish one version in one place, with a clear change process for swaps and call-outs.
- Run a call-out chain for every uncovered shift, and record the outcome in the roster.
- Close the week with a handover note and an hours check for each guard.
What security guard scheduling software does
A guard roster is not a normal staff rota with different job titles. Each shift belongs to a site, each site has a contract level of cover, and many posts run through the night, across weekends, and across public holidays. A guard who is free on paper may still be the wrong person for a post, because the post needs a licence class, a site induction, or experience with a particular client. Scheduling software for guards must therefore handle three things together: the site, the post, and the person.
The table below separates the jobs that most security companies need, and shows which kind of tool usually covers each job.
| Job | General scheduling tool | Patrol-first tool | Spreadsheet or paper |
|---|---|---|---|
| Build a roster by site and post | Yes, with locations and roles | Yes, with site and post records | Yes, but checks are manual |
| Publish the roster to guards | Yes, in one live version | Yes, usually by mobile app | No live version, copies go stale |
| Time-off and swap requests with approval | Yes, in most scheduling tools | Often, but not always the focus | No, handled by message |
| Open shifts for eligible guards to claim | Yes, in many tools | Sometimes, as open work | No, offered by phone or message |
| Time clock and hours totals | Yes, in many tools | Often, tied to site check-in | Hours added by hand |
| Checkpoint proof that a patrol happened | No | Yes, with QR, NFC, or GPS check-ins | No |
| Incident reports tied to a site and shift | No, or only as a message | Yes, with forms and photos | Paper forms, filed separately |
| Licence expiry alerts | No, or only as a note | Often, with licence records | Manual diary check |
| Client billing and payroll | Usually no | Sometimes, in larger suites | Manual, from hours totals |
That split explains why tool lists alone do not settle the choice. A general scheduling tool can run the roster well and still leave patrol proof and licence alerts to other tools. A patrol-first tool can prove patrols well and still be more than a small company needs for the roster itself. The rest of this guide focuses on the roster, because an uncovered site is the failure that matters first, and it shows where to add a specialist tool when patrol proof is part of the contract.
Start with the site, not the software
Software cannot fix a site that has never been written down. Before you build a roster, write one post order per site. A post order is the short written instruction for a post: what the guard does, where they stand or patrol, when the post starts and ends, who to call, and what to do first if something goes wrong. Keep each post order to one page where possible, so a guard covering at short notice can read it before the shift starts.
Use the template below for each site. Fill it once, review it when the contract changes, and keep the current version with the roster.
POST ORDER Site name: _______________ Client contact and phone: _______________ Post name and location on site: _______________ Shift start and end: _______________ Days covered: _______________ Duties in order: _______________ Areas to patrol, and how often: _______________ Access, keys, and alarm notes: _______________ Licence or training this post needs: _______________ Site induction completed by: _______________ First call for a problem: _______________ Second call if no answer: _______________ Incident report route: _______________ Handover notes from the last shift: _______________
Work through these four checks for each site before the roster is built. First, confirm the contracted cover: how many guards, on which days, and at which times. A site that needs two guards from 6:00pm to 6:00am is a different roster from a site that needs one guard on weekdays only. Second, list posts that need a named skill, such as a licence class, first aid training, or a driving licence for a mobile patrol. Third, note posts that must not be left alone, such as a gate post during a delivery window, so a break can be covered. Fourth, write down the site rules that affect scheduling, such as a client request for the same guards each week, or a rule that a new guard must be paired with an experienced guard for the first shifts.
A roster built from post orders is easier to check, because every shift can be traced back to a site need. A roster built from last week, copied without checking post orders, hides changes in contract cover until a client notices a gap.
Record guards by licence, site, and availability
A guard record needs more than a name and a phone number. For scheduling, the record must answer four questions at the moment a shift is placed: can this guard work this post, can they work at this time, can they work at this site, and how many hours have they already worked this week. If any answer is missing, the manager guesses, and guesses cause uncovered posts and declined shifts.
Use the record below for each guard. Keep licence details in the same place as availability, so a shift is never offered to a guard whose licence for that post has lapsed.
| Guard record field | What to record | Why it matters for the roster |
|---|---|---|
| Full name and contact | Name, mobile number, and a second contact route | Call-outs need a fast, reliable route |
| Posts they can work | Post names, with site inductions completed | A guard without induction must not be sent alone |
| Licence class and expiry | Licence class for each post type, and expiry date | An expired licence can leave a post uncovered and breach a contract |
| Training on file | First aid, fire safety, driving, or client training, with dates | Some posts need training, not only a licence |
| Availability | Days and times they can work, and days they cannot work | Availability with times prevents a shift that starts before a guard is free |
| Preferred sites | Sites they know, and sites they cannot reach in time | Travel time matters for a night post far from home |
| Weekly hour limit | Agreed hours for the week, and any second-job limits | Hour totals must be checked before the week is published |
| Rest rule | Minimum rest between a night finish and the next start, as agreed | Night rotations fail when rest is not checked |
Licence and employment rules vary by country, state, and locality, and they change. This guide gives general planning help only. Check the current local law, licence rules, and contract terms for your area, or ask a professional, before you rely on a licence or hours rule in your roster. Do not treat an example limit in this guide as a legal requirement. It is a planning choice for that example, stated so the example can be checked.
Set a routine for licence checks. Check expiry dates once a week, on the same day you build the next roster, and flag any licence that expires during the roster period. A guard whose licence expires mid-week must not be rostered for a post that needs that licence after the expiry date, even if the shift was placed before the expiry was noticed. Move that guard to a post they can still work, or fill the post with a guard who holds the licence, and record the change in the roster.
Rotations that cover 24-hour sites
A 24-hour site needs a rotation, not a set of single shifts placed one by one. A rotation is a repeating pattern of shifts and rest days that covers the site and gives guards a predictable week. The pattern must be checked against rest, because the riskiest change in a guard roster is a night finish followed by an early start the next day.
The table below shows a simple four-team rotation for one 24-hour post. Each team works a block of shifts, then has rest days, then returns on a different shift block. Adapt the times to your site, and keep the same pattern for at least four weeks so guards can plan around it.
| Team | Week 1 | Week 2 | Week 3 | Week 4 |
|---|---|---|---|---|
| Team A | Days, 6:00am to 6:00pm | Nights, 6:00pm to 6:00am | Rest | Days, 6:00am to 6:00pm |
| Team B | Nights, 6:00pm to 6:00am | Rest | Days, 6:00am to 6:00pm | Nights, 6:00pm to 6:00am |
| Team C | Rest | Days, 6:00am to 6:00pm | Nights, 6:00pm to 6:00am | Rest |
| Team D | Cover and leave cover | Cover and leave cover | Cover and leave cover | Cover and leave cover |
Build a rotation with these five steps. First, list the shift blocks the site needs, with exact start and end times, such as Day 6:00am to 6:00pm and Night 6:00pm to 6:00am. Second, count how many guards each block needs, and add a cover guard for leave and sickness, rather than hoping no one is absent. Third, set a rest gap between blocks, stated in hours, and check every changeover by actual start and end times. A night shift ending at 6:00am followed by a day shift starting at 6:00am the next day gives 24 hours of rest, while a night shift ending at 6:00am followed by a shift starting at 2:00pm the same day gives only 8 hours. Fourth, publish the rotation for a full cycle, not one week at a time, so guards see rest weeks in advance. Fifth, keep one team or a small pool as cover, because a rotation with no cover guard fails on the first absence.
For sites that are not 24-hour, the same method works on a smaller scale. List the blocks, count cover for each block, set the rest rule, and publish the pattern. A weekday-only site still needs a rest check when a guard works a late close on Friday and an early open on Saturday, and it still needs cover for leave.
Worked example: two sites, one checked week
The example below is illustrative only. It is not a real company, and the names, sites, and times are made up to show how post orders, guard records, and a cover check work together. The company runs two sites. Site 1 is a warehouse that needs one guard every night from 6:00pm to 6:00am, Monday to Sunday. Site 2 is an office that needs one guard on weekdays from 6:00pm to 10:00pm, and one guard on Saturday from 8:00am to 4:00pm. The company rules for this example, stated so every decision below can be checked, are: a guard works only posts they are licensed and inducted for; a guard works only days and times within their recorded availability; no guard exceeds 48 scheduled hours in the week; no guard works a day shift within 12 hours of a night finish; every site shift must have a named guard before the week is published.
Guard records for this example are: Alex holds the warehouse licence and induction, is available nights Monday to Sunday, and has a weekly limit of 48 hours. Ben holds the warehouse licence and induction, is available nights Monday to Thursday and Sunday, and has a weekly limit of 40 hours. Carla holds the office licence and induction, is available weekday evenings and Saturday daytime, and has a weekly limit of 32 hours. Dan holds both licences and both inductions, is available as cover on Friday night, Saturday, and Sunday, and has a weekly limit of 24 hours. No guard in this example is scheduled outside their availability, and no guard is placed on a post they are not licensed for.
Here is the finished week, with shift times in each cell and totals in the last column.
| Guard | Site and post | Mon | Tue | Wed | Thu | Fri | Sat | Sun | Total hours |
|---|---|---|---|---|---|---|---|---|---|
| Alex | Site 1 warehouse night | 6:00pm to 6:00am | 6:00pm to 6:00am | 6:00pm to 6:00am | Off | Off | Off | Off | 36 |
| Ben | Site 1 warehouse night | Off | Off | Off | 6:00pm to 6:00am | Off | Off | 6:00pm to 6:00am | 24 |
| Dan | Site 1 warehouse night | Off | Off | Off | Off | 6:00pm to 6:00am | 6:00pm to 6:00am | Off | 24 |
| Carla | Site 2 office evening | 6:00pm to 10:00pm | 6:00pm to 10:00pm | 6:00pm to 10:00pm | 6:00pm to 10:00pm | 6:00pm to 10:00pm | 8:00am to 4:00pm | Off | 28 |
Check the week against the stated rules, one rule at a time. Site 1 cover is one guard every night: Alex Monday, Tuesday, and Wednesday, Ben Thursday and Sunday, and Dan Friday and Saturday. No night is left without a named guard. Site 2 cover is one guard every weekday evening, with Carla Monday to Friday, plus Carla on Saturday daytime. Hour totals are Alex 36, Ben 24, Dan 24, and Carla 28. No guard exceeds their weekly limit, and Dan works 24 hours in total across Site 1 only, and is not needed for Site 2 cover in this week. Rest is checked by times: Alex finishes at 6:00am on Thursday after the Wednesday night shift, and has Thursday and the rest of the week off from Site 1, so no early start follows a night finish. Ben finishes at 6:00am on Friday after the Thursday night shift, and does not work again until Sunday night, which is more than 12 hours later. Dan finishes at 6:00am on Sunday after the Saturday night shift, and has Sunday daytime off.
One fix was made during the check. The first draft left Saturday night at Site 1 open, because Ben is not available on Saturday, so Dan was placed on Saturday night within Dan availability and within Dan 24-hour limit. Thursday night was given to Ben, rather than adding a fourth night to Alex, so Alex stays at 36 hours with a buffer below the 48-hour limit. Without that Saturday fix, the week would have looked full in the grid and failed on cover.
Call-outs and no-shows: run a chain, not a scramble
A call-out is not a surprise. It is a regular event with a known cost: an uncovered site, a client call, and a manager spending the shift on the phone. The fix is a chain written before the week starts, so the first call goes out in minutes, not after a search for numbers.
Use the chain below for every uncovered shift, in this order, and record each step as you go.
- Confirm the gap in the roster, with site, post, start time, and licence needed, so no one is offered a post they cannot work.
- Offer the shift as an open shift to guards who hold the licence, hold the site induction, are available at that time, and are inside their weekly hour limit.
- Call the cover guard or cover pool next, in the order written in the chain, and give a clear accept deadline, such as 30 minutes before the shift starts.
- If no cover guard accepts, call guards who are off duty but available, starting with guards who know the site, and check hours and rest before confirming.
- If the post is still open, call the supervisor and the client contact in that order, with the facts: site, post, start time, and what cover has been tried.
- Record the final cover, the time it was confirmed, and the reason for the gap, so the same gap can be prevented next week.
Use the escalation table below to write the chain for each site, and keep it with the post order.
| Step | Who to contact | When | What to say |
|---|---|---|---|
| 1 | Guards eligible for the post, by open shift offer | As soon as the gap is known | Site, post, start and end times, licence needed, and accept deadline |
| 2 | Named cover guard | If no acceptance within the deadline | Same facts, plus the site post order location |
| 3 | Supervisor on duty | If cover is not confirmed one hour before the shift | Site, post, start time, and cover tried so far |
| 4 | Client contact | Only if the post will start uncovered, or cover will arrive late | Site, post, expected arrival time, and the plan to restore full cover |
Here is a copy-paste call-out message you can use for the first offer. Fill in the site, times, and deadline, and send it through the same channel every time, so guards learn to watch that channel.
Hi, we have an open shift: [site name], [post name], [day] from [start time] to [end time]. This post needs [licence or training]. Please reply YES by [time] if you can work it and are inside your weekly hours. I will confirm the cover in the roster once accepted.
When a guard calls out, do not punish the team by offering the shift only to the same reliable people by private message. That hides the offer, burns out the same guards, and leaves no record. An open shift offered to every eligible guard, with manager approval before the roster changes, spreads the work fairly and keeps a record of who was offered the shift and who accepted it.
After the shift is covered, close the loop. Note the absence in the guard record, check whether the same guard, site, or shift pattern keeps producing gaps, and fix the pattern if it repeats. A gap that happens three weeks in a row on Saturday nights is a roster problem, not a single absence, and it needs a rotation change or an extra cover guard, not another round of calls.
Handover, incidents, and client proof
A roster tells a guard where to be. A handover tells the next guard what happened. Without a handover, a new guard starts a night shift without knowing about a broken gate, a visitor who was refused entry, or a delivery expected at midnight. That missing information is a common cause of client complaints, even when cover itself was correct.
Use the handover template below at every changeover. Keep it short, factual, and tied to the site and shift, so the next guard can act on it without reading a long report.
HANDOVER NOTE Site and post: _______________ Shift date and times: _______________ Guard handing over: _______________ Guard taking over: _______________ Incidents during this shift: _______________ Visitors, deliveries, and access events: _______________ Faults or risks found: _______________ Tasks not finished: _______________ Instructions for the next shift: _______________
Work through this handover checklist at the end of each shift. First, record incidents with time, place, and action taken, in plain words, without opinion or blame. Second, list faults, such as a gate that did not lock, a light that failed, or an alarm that sounded, with the time reported and the person told. Third, list tasks left open, such as a patrol route not finished or a visitor log not completed, with the reason. Fourth, pass the note to the next guard and to the supervisor, through the same channel every time, so notes are not lost in personal messages.
Client proof is a separate question from handover. Some contracts ask for proof that patrols happened, with checkpoint times and photos. A general scheduling tool does not provide checkpoint proof, and this guide does not claim otherwise. If a contract requires patrol proof, use a patrol tool for that job, alongside the roster tool, and keep the two records linked by site, post, and shift times. If a contract asks only for cover, hours, and incident notes, a roster tool with messaging and a time clock can carry that record, provided handover notes are written and kept in one place.
Choose the right tool for your company
The choice is not between a good tool and a bad tool. It is between a tool that fits the job your company does most, and a tool that fits a job you rarely do. Use the decision table below, and test the tool on a real week before you commit to it.
| If this is true | A tool of this type fits better | Why |
|---|---|---|
| One or two sites, a small team, and cover is the main job | General scheduling tool with locations and positions | The roster, requests, and hours stay in one place, without a patrol suite |
| Many sites, and clients ask for checkpoint proof every week | Patrol-first tool, with scheduling built in | Patrol proof is part of the contract, not an extra report |
| Large contracts, billing, and payroll in the same system | Full guard management suite | Billing and payroll need contract and hours data together |
| Guards work from phones, rarely from a desk | A tool guards can open on a phone, with a live roster | A wall copy or file leaves mobile guards guessing about changes |
| Swaps, time off, and call-outs happen every week | A tool with open shifts, requests, and manager approval | Changes stay in the roster, with a record of each decision |
| Licence expiry is a contract risk | A tool with licence records and expiry alerts, or a weekly licence check routine | A lapsed licence must be caught before the roster, not after |
Test a tool with one real week, using real sites, real posts, and real availability. Check these seven points about that test week:
- You can see cover for every site at a glance.
- You can spot a gap without counting by hand.
- You can offer an open shift to eligible guards only.
- A guard can accept a shift and see it confirmed.
- A swap needs manager approval before the roster changes.
- Hours totals are visible for each guard.
- You can find the published version a week later.
If any check fails, that tool will cost you time every week, even if its sales page lists the feature.
Calendza is relevant here only in the first row of the table: it is a general scheduling tool, with drag-and-drop scheduling, bulk publish, locations and positions, time-off and swap requests with manager approval, open shifts, a time clock with automatic timesheets, and team messaging. It does not provide patrol checkpoint proof, licence expiry alerts, or client billing, and a company that needs those jobs should add a specialist tool for them, rather than expecting a scheduling tool to cover them.
When you compare tools, check current pricing and plan limits on the vendor site before you build a process around them, because prices and limits change, and a list from last year may no longer match the current plan. Judge a tool on the test week, not on a list of features, and note which jobs the tool does not do, so those jobs get a named owner and a routine, instead of being forgotten.
Set up in one week
A new tool fails when it is introduced in the middle of a busy week, with no written sites, posts, or guard records. Set it up in one calm week, in this order, and do not publish a live roster from it until the setup checks pass.
- Write post orders for each site, with contracted cover, duties, and licence needs.
- Enter locations and positions, using the site and post names guards already recognise.
- Enter each guard once, with licence class and expiry, site inductions, availability with times, and weekly hour limits.
- Build next week from post orders, not from last week copied without checks, and run the cover, availability, licence, hours, and rest checks.
- Publish the test week in the tool, and ask guards to check their shifts and report errors by a set day and time.
- Run one call-out drill: post an open shift, confirm acceptance, and record the change in the roster, so the chain is tested before a real absence.
- Close the week with hours totals, handover notes, and a list of setup fixes for the following week.
Use the setup checklist below to confirm the week is ready. A tick means the item is written and checked, not just planned.
- [ ] Every site has a post order, with cover times and licence needs.
- [ ] Every guard record has licence expiry, inductions, availability, and hour limits.
- [ ] Every shift in the test week has a named guard, a site, a post, and start and end times.
- [ ] Cover, availability, licence, hours, and rest checks have been run and fixes recorded.
- [ ] Guards can open the published roster on a phone, without asking for a copy.
- [ ] The call-out chain is written, with a cover guard and a supervisor contact for each site.
- [ ] Handover notes have a fixed channel, and supervisors know where to find them.
If a setup item is missing, fix it before the live week, even if that means delaying the switch by a week. A roster tool launched with missing guard records will produce a roster that looks complete and fails on the first night shift.
Mistakes that leave a site uncovered
Most uncovered sites are caused by habits, not by software. The table below lists the mistakes that turn a good roster into a gap, what each one causes, and the fix that prevents it.
| Mistake | What happens | Fix |
|---|---|---|
| Copying last week without checking licences or availability | Guards are booked when they cannot work, or for posts they are not licensed for | Run post orders and guard records against every week, even a week that looks the same |
| Keeping the roster and a group chat as two versions | No one knows which version is current, and changes get lost | Pick one publish place, and treat a change as real only when it is in that place |
| Recording availability as vague notes, such as usually free at night | The roster fills shifts with guesses, and guards decline shifts they never agreed to | Record availability with days and times, and separate cannot work from prefer not to work |
| Ignoring hour totals until the end of the week | One guard is over their agreed hours, and fixing it means moving several shifts | Add hours as you fill the roster, and check the total column before publishing |
| Publishing late, often the day before the week starts | Guards cannot plan, cover is hard to find, and call-outs pile up | Fix a publish day each week, and publish earlier than feels comfortable |
| Offering cover only to the same reliable guards by private message | The same guards burn out, other guards never get offered work, and no record exists | Post open shifts to every eligible guard, with manager approval |
| Letting one manager hold the whole roster in their head | No one else can build or fix the week, and a holiday stops the process | Write post orders down, keep the call-out chain with the roster, and train one other person |
| Treating patrol proof as a scheduling feature | A contract that needs checkpoint proof is judged on a roster alone, and proof is missing | Name the patrol job separately, and add a specialist tool when the contract requires it |
If your roster keeps failing in the same way, fix the habit in the table first, before you buy a different tool. A new tool with the same habit will produce the same gap, with a different layout.
Related reading: if you want the full step-by-step process behind building a week, the guide to scheduling employees for a small business covers it in detail. If you are choosing the tool itself rather than the method, the guide to an employee shift schedule app explains which features matter and how to run a first week in an app. If swaps are the job that strains your week most, the shift swap policy guide gives you a copy-paste policy and approval rules.
Frequently asked questions
What is security guard scheduling software?
Security guard scheduling software is a tool that builds rosters by site, post, and shift, publishes one live version to guards, and handles time-off requests, swaps, and open shifts with manager approval. Some tools add patrol checkpoint proof, licence tracking, and client reporting, while general scheduling tools focus on the roster, requests, hours, and messaging. The right type depends on whether your contracts require patrol proof, or whether cover and hours are the main job.
Can general scheduling software work for a security company?
Yes, when the main job is rostering, cover, requests, and hours, and patrol proof is not part of the contract. A general tool works when it holds locations and positions, so shifts are built by site and post, and when it gives guards a live roster they can open on a phone. It does not work as a patrol proof tool, so a company that must prove checkpoint visits should use a patrol tool for that job, alongside the roster.
How do I schedule guards across multiple client sites?
Build the roster by site first, not by guard. Write a post order for each site, with contracted cover and licence needs, then fill each site shift with a guard who holds the licence, holds the site induction, and is available at that time. Check cover for each site separately, then check each guard for double bookings, hours, and rest across all sites, because a guard booked at two sites at the same time is a gap at one of them.
How do I handle a guard who calls out before a night shift?
Run the written call-out chain for that site, starting with an open shift offer to eligible guards, then the named cover guard, then the supervisor, and then the client contact if the post will start uncovered. Give each step a clear deadline, check licence, availability, hours, and rest before confirming cover, and record the final cover and the time it was confirmed in the roster. After the shift, note the pattern, and fix the rotation if the same site or shift keeps producing gaps.
How far in advance should I publish a guard roster?
Publish on the same day each week, and as early as you can manage, so guards can plan transport, rest, and a second job around it. Many small companies aim for at least one week ahead, and some contracts or local rules require more notice, which varies by locality. If you cannot publish a full week early, publish the firm shifts first in the same place and mark the rest clearly as not yet final, rather than leaving guards with no version at all.
Calendza handles this specific task by keeping the roster and the work around it in one place. You build shifts by location and position with drag-and-drop scheduling, publish the week in bulk when it is ready, and guards check shifts, request time off or a swap, pick up open shifts, clock in, and message the team from the same workspace. It is in free early access with no credit card required, so you can test a real guard week in it before you decide. Start at calendza.com.
