← All features

Scheduling

One calendar. Always in sync.

Goji syncs both ways with your Google Calendar, so an appointment booked here shows up there and an event you add there blocks the time here — no more double-checking two places before you say yes to something. Hours, buffers, and a reschedule/cancellation policy are set once and enforced everywhere, whether you or a patient made the change.

Calendar sync

Two-way Google Calendar sync, so you only maintain one calendar.

Connect a provider’s Google Calendar once and it stays current in both directions: book a patient in Goji and the event appears on Google; add a dentist appointment on Google and Goji blocks that time automatically. Changes push and pull live, not on a delay you have to account for. Using something other than Google? Subscribe to any calendar’s read-only ICS feed instead, so its busy times still count.

Hours & buffers

Facility hours, provider hours, and buffer time — set once, enforced everywhere.

Set a facility’s weekly hours, then let each provider narrow their own inside it — a provider with no override just inherits the facility’s hours, nothing to re-enter. A buffer before or after a service holds that time closed on the calendar automatically, so back-to-back bookings actually leave the gap you meant.

Reschedule & late-cancellation policy

One cancellation window, enforced the same way for a reschedule and a cancellation.

Set a minimum-notice window once and it governs both moving an appointment and cancelling it — a reschedule to a new time disrupts your day the same way a late cancellation does, so it’s held to the same rule instead of a separate one nobody remembers to set. Inside that window, staff get a clear warning and have to confirm deliberately rather than the change going through silently; a full reschedule history stays on the appointment, not just its latest time.

Drag to schedule

Drag to schedule an appointment — no new-booking form to open first.

Click and drag across any open space on the calendar grid and a new appointment starts right there, already set to that time, provider, and room. Day, week, and month views cover seeing a single provider’s day or a full week across your whole practice at a glance, with every room and provider conflict protected at the database level.

Filter by session history

Filter the calendar by charting status, not just appointment status.

A dedicated Charting filter sits next to the usual status filters — a genuinely different question from whether an appointment is scheduled or cancelled. Narrow the grid to just the appointments still missing a note.

  • Choose All charting, Not started, In progress, or Complete to narrow what the grid shows
  • The same accent/warning/muted colors appear on every appointment block and on the dashboard's schedule card, so a color always means the same thing
  • Facility and provider filters are multi-select — view any combination, not just one at a time

Walk-ins & guest booking

Walk-ins and guest bookings, without creating a patient record first.

Someone walks in at two on a Tuesday and you don’t have a record for them yet — that doesn’t stop you. Pick a facility, service, provider, room, and time, and attach an existing patient or just a guest name. The walk-in charts exactly the way a visit booked weeks in advance does, and the record can catch up afterward instead of blocking the visit.

Frequently asked questions

Does Goji sync with Google Calendar?

Yes, both ways. Connect a provider's Google Calendar once and an appointment booked in Goji appears there automatically, while an event added on Google blocks that time in Goji — no delay, no manual re-checking either calendar.

What if my practice doesn't use Google Calendar?

Subscribe to any calendar's read-only ICS feed instead, so its busy times still count against availability in Goji. Two-way push/pull sync is specific to Google today; ICS is the fallback for everything else.

Can different providers have different working hours?

Yes. Set a facility's weekly hours once, then let each provider narrow their own inside it — a provider with no override just inherits the facility's hours, nothing to re-enter for every new provider.

What happens if a patient tries to reschedule or cancel at the last minute?

One minimum-notice window governs both a reschedule and a cancellation, so a late change either way gets the same treatment. Inside that window, staff have to confirm deliberately rather than the change going through silently.

Can I create an appointment by dragging on the calendar?

Yes. Click and drag across any open space on the grid and a new appointment starts right there, already set to that time, provider, and room.

See your own week laid out in a couple of minutes.