Calendar & Google Sync
View scheduled work, connect Google Calendar, and manage calendar display settings
How long each visit blocks the calendar? See the companion article How Site Visits Block Your Calendar for VTF arrival windows, completion holds, STF firm times, and drive-time events.
Built-in calendar
Open Calendar from the sidebar to see scheduled work across your tenant:
Tickets and appointments
Site visits (scheduled site work)
Team member schedules (when your plan includes multiple employees)
Click an event to open its details. Work an outside technician is doing — a marketplace technician or one of your Private Network technicians — uses a dedicated teal color in the legend.
Legend toggles. The color legend under the calendar lists every person with events in the current view, plus a Marketplace & Network entry when outside-technician work is showing. Click a name to hide that person's events; click again to bring them back, or use Show all. A few rules keep this safe:
A marketplace or Private Network visit is always teal, so it matches its legend entry.
An event shared by several people stays visible as long as any one of them is still shown.
Events with nobody assigned have no swatch to switch back on, so they are never hidden.
Someone newly routed to a visit always appears; hiding is something you do on purpose, never a default.
Display timezone (My Account — not Calendar Settings)
Timestamps you see in activity feeds, notifications, audit logs, and "last updated" fields follow your personal timezone, set under My Account → Time Zone.
Owners: saving My Account also updates your organization's scheduling default for dashboard date math and background jobs.
Staff and technicians: each person sets their own timezone on My Account.
Pure vendors/contractors without a login may still have a timezone on their resource record — that's only for people who don't have a user account.
Site visit scheduled times on the site visit itself always display in that visit's site timezone (derived from the site address), regardless of your My Account setting. Calendar Settings does not include a separate timezone picker.
On the Calendar grid, each event is placed at the time it lands in your timezone (your My Account setting, or your browser's if you have not set one), so the in-app calendar and your Google calendar agree. A 10:00 AM Eastern visit sits on the 9:00 AM line for someone in Central time. When the site's zone differs from yours, the event details also show the site local time — that is the number you say out loud to the technician. Manual calendar entries with no site behind them are shown exactly as entered.
Calendar Settings
Go to Calendar → Settings to configure integrations and how calendars appear inside Service Envoy:
Google Calendar Integration — connect your tenant's Google account (solo or team setup) and authorize Service Envoy.
Technician Calendar Mapping — choose which Google calendar receives each employee's events.
Marketplace Calendar Mapping — optional calendar for marketplace-related events (not tied to a single employee).
Internal Calendar User Colors & Visibility — set display colors and which user calendars show on the internal calendar view. Use Sync All Employees to create calendars for active employees.
Google Calendar sync (add-on or employer plans)
When the Google Calendar sync feature is enabled on your plan:
Go to Calendar → Settings.
Complete the Google OAuth setup (solo = one shared account; team = each user connects individually).
Map technicians to the correct Google calendars.
Confirm events are flowing on the main Calendar view.
Synced visits include the primary service block plus any completion hold and drive time blocks Service Envoy generated for that visit, and any Parts Pickup or Parts Drop Off blocks (see below).
Parts Pickup and Parts Drop Off blocks
When a site visit carries a Parts Pickup or Parts Drop Off task, Service Envoy adds a separate calendar block for the stop so the technician's day reads end to end:
One hour by default. A pickup block ends right when the technician needs to set off for the visit (before any drive-time block), so parts are collected first. A drop-off block starts the moment the on-site commitment ends.
The block's location is the stop's address — the depot, supplier, or drop point — not the job site, so directions from the calendar go to the right place.
The tracking number comes first in the block's notes, followed by the carrier and the company to pick up from or drop off at. That detail is kept on the Google copy too, because it is what the technician is asked for at the counter.
The title matches the visit's own event — client, ticket number, then "Parts Pickup at …" or "Parts Drop Off at …" — so a parts stop reads like everything else on the calendar.
Billable stops say so. A billable pickup reminds the technician to check in there and stay checked in while driving to the site; a billable drop-off reminds them to stay checked in until it is done.
An empty stop reserves no time. A parts task added in bulk with nothing filled in yet has no calendar block. The block appears as soon as the stop has real detail (company, carrier, tracking number, or address).
Editing or deleting the parts task updates or removes its block, in the app and on Google.
Dispatching to the marketplace (client companies)
If your company sends work out to the marketplace, the visit stays on your own calendar as well, whether it started life as an internal visit or was created on the marketplace from the start:
Before a technician accepts, the event is titled Marketplace (pending tech).
Once a technician is assigned, the title becomes Marketplace: followed by the technician's name.
Where it lands in Google. A marketplace visit has no internal employee to map, so it syncs to the calendar chosen under Marketplace Calendar Mapping. If no Marketplace calendar is configured, the event stays in-app only — it is not dropped onto your primary calendar.
Cross-posted visits are the exception. If one of your own employees still holds the visit while it is posted to the marketplace, the event stays on that employee's calendar through the normal Technician Calendar Mapping, where the person doing the work will actually see it.
Schedule changes follow through. When a marketplace visit is rescheduled — including an approved schedule-change request — the calendar event and its Google copy move with it.
Repair tools. The Marketplace Calendar Mapping card in Calendar Settings carries three check-first fixes for visits that predate these behaviors: Missing marketplace events (Check what's missing, then Create missing events), Marketplace events on the wrong date (Check for wrong dates, then re-sync), and Duplicate events on Google. Each one runs a check that reports what it found before the second button is enabled, they are safe to run again, and events you created on that Google calendar yourself are never touched.
Receiving marketplace work (technician companies)
If your company accepts marketplace site visits, those visits appear on your own calendar — not just the dispatching client's. When a visit is assigned to one of your technicians, Service Envoy creates the event inside your tenant automatically.
The client is named. The event names the real client (or the company that posted the work, if that company keeps its client private), alongside the site address, the schedule and the scope of work. A calendar entry only exists once the visit has been assigned to one of your technicians, and from that point you are entitled to know whose building they are walking into. While you are still browsing or waiting on a decision there is no calendar event yet, and the job shows the company that posted it everywhere else until it is yours.
They route through your technician mapping. A marketplace visit is assigned to a specific technician, so it syncs to whichever Google calendar that employee is mapped to under Technician Calendar Mapping.
Not the Marketplace Calendar Mapping. That setting is for companies dispatching work out to the marketplace, where there is no internal employee to map. As a technician company you can leave it alone.
Setup order that works:
Calendar → Settings → connect Google (tenant OAuth).
Map each technician who takes marketplace work to a Google calendar.
Accept a marketplace visit, then open Calendar — the event should appear immediately, and on the mapped Google calendar within moments.
If you connect Google but skip step 2, events still sync — but they land on your tenant's primary calendar instead of the technician's, which is usually not what you want.
The site visit itself always shows its scheduled time in the site's local timezone, which may differ from yours on out-of-state work. On the Calendar grid the same visit is placed at the time it lands in your day; open the event to see the site local time alongside it.
When a technician loses a visit
When a marketplace technician is unassigned from a visit — including an automatic no-show unassign when the arrival window ends without a check-in — the visit comes off that technician's calendar, in the app and on Google. The dispatching company's copy stays on their calendar and returns to the Marketplace (pending tech) title, because the visit is still on their books. When one technician is swapped for another, the calendar entries are rebuilt for the incoming technician exactly as a fresh acceptance would build them, drive-time blocks included.
FAQ
Where do I change my timezone?
My Account → Time Zone. Calendar Settings no longer has a system timezone control.
Why does a site visit show a different timezone than my account?
Visit times on the site visit itself are site-local. The Calendar grid places the event in your timezone and shows the site local time in the event details when the two differ. Your account timezone otherwise only affects how your timestamps and notifications are rendered.
The calendar and the site visit page show different times for the same visit.
Both are right. The site visit page shows the time where the site is; the calendar shows when that moment lands in your own timezone. Open the event and the site local time is listed underneath.
I don't see Google Calendar options in Settings.
Google sync is plan/add-on gated. If it's not on your subscription, the OAuth and mapping cards won't appear.
Why are there two events for one visit?
On VTF (arrival window) visits, a second Reserved for … event is normal when the rate limit exceeds the window. See How Site Visits Block Your Calendar. A visit with a Parts Pickup or Parts Drop Off task also carries a separate block for the stop.
My calendar says "Marketplace (pending tech)". What does that mean?
The visit is posted to the marketplace and no technician has accepted it yet. The title changes to Marketplace: plus the technician's name once someone is assigned, and goes back to "pending tech" if that technician is later unassigned.
I accepted a marketplace visit but nothing reached my Google calendar.
Check that the assigned technician has a Technician Calendar Mapping — that is what marketplace visits route through, not the Marketplace Calendar Mapping. The visit always appears on the in-app Calendar either way, so if it is there but not in Google, the mapping is the thing to fix.
A technician was unassigned but the visit is still on their Google calendar.
Unassigning removes the visit from the departing technician's calendar automatically. If an older event is still showing, it predates that behavior — delete it from Google by hand.