Zoom does not need Google Calendar. Google Meet (auto link) does — the Meet link is created on the calendar event, so with no calendar connected a Google Meet service produces no link.
What syncs, and which way
Each direction has its own switch, so you can push without pulling or the reverse.
Free/busy from the connected calendar is one of the things DMLY subtracts when it works out open slots — alongside working hours, notice rules, buffers and existing bookings. See Staff and availability.
Connect Google Calendar
1
Open the Calendar tab
Go to Appointments → Settings → Calendar and select Connect Google Calendar.
2
Authorise the Google account
Sign in and grant the Calendar permission. Google treats this as a sensitive permission, so expect a consent screen.
3
Choose the calendar
Pick one under Calendar to sync. New bookings land here, and this calendar’s free/busy is what closes bookable slots.A workspace has a single Google connection, and its events block every staff member’s availability — not just the account owner’s. Connect a calendar that represents the whole business’s busy time, not one person’s diary: a personal calendar full of dentist appointments will quietly close slots for the entire team.
4
Set the direction
Push DMLY → Google and Pull Google → DMLY are separate switches. Leave both on for true two-way sync.
Connect Zoom
1
Connect the account
Go to Integrations → Zoom and select Sign in with Zoom. One Zoom account serves the whole workspace.
2
Set a service's location
In Offerings → Services, open a Service and set Location to Zoom (auto link). This is the switch that matters — Zoom being connected does nothing on its own.
What Zoom does over a booking’s life
- Booked — a meeting is created and the join link is saved on the booking.
- Rescheduled — the same meeting moves. The join link does not change, so a client who already saved it is fine.
- Cancelled — the meeting is deleted from Zoom.
- Deleted in your Zoom portal — if you delete a meeting yourself and the booking is later rescheduled, DMLY notices the dead link and creates a replacement.
Zoom links for classes
Zoom links for classes
A class gets one Zoom meeting for the session, and every seat shares it. Seats never get their own personal meeting. See Classes.
What breaks it
Bookings aren't reaching Google Calendar
Bookings aren't reaching Google Calendar
Check, in order: Push DMLY → Google is on; the connection still shows as connected. If nothing is connected, bookings still work perfectly — they just live only in DMLY. A calendar error never blocks or undoes a booking; the slot is held in DMLY first and the event is pushed afterwards.If the events exist but aren’t where you expect them, confirm Calendar to sync points at the calendar you’re watching — an unset or changed selection sends events to the Google account’s primary calendar instead.If the Service is pointed at its own calendar rather than the workspace one, its bookings go there instead.
Bookings on a pay-before service never appear
Bookings on a pay-before service never appear
A Service set to Pay before booking holds the slot for 15 minutes without pushing anything. No calendar event, no Zoom meeting, no confirmation — until the payment clears. If it never clears, the hold expires and nothing was ever pushed. This is working as intended. See Appointment payments.
Sync stopped, then started again by itself
Sync stopped, then started again by itself
Google expires the token DMLY uses to track changes. When that happens DMLY clears it, flags the status, and does a full resync on the next sweep — within about five minutes. No action needed.A status of
error is different: something went wrong and stayed wrong. Check the connection is still authorised, and see Logs.A booking has no Zoom join link
A booking has no Zoom join link
Zoom wasn’t connected when the booking was made, or the Service’s Location isn’t Zoom (auto link). Without a link,
{{meeting.link}} falls back to the location label — so the client gets a message that reads oddly rather than a broken link.Connecting Zoom afterwards doesn’t backfill existing bookings, but rescheduling one will create its meeting.Google events aren't blocking my slots
Google events aren't blocking my slots
Check Pull Google → DMLY is on and that the events are on the calendar chosen in Calendar to sync — DMLY only reads the one calendar. The sweep runs every 5 minutes, so a just-added event isn’t instant.
Calendar Feed
Appointments → Settings → Calendar also offers a Calendar Feed — a URL you can subscribe to from Google Calendar, Outlook or Apple Calendar to see appointments and classes. It is read-only and one-way: changes made where you subscribe never come back to DMLY.Services
Set duration, location and booking policy.
Staff and availability
Working hours, time off and how slots are worked out.
Appointment payments
Pay before, pay after, and what holds a slot.
Integrations
Everything you can connect to your workspace.

