Booking with Calendar Picker (PRO) | Form Forge - Build Forms with AI in Seconds
Download Log in

Booking with Calendar Picker (PRO)

User Guide

The Calendar Picker field lets visitors book an available time slot directly from your form, based on your real Google Calendar availability. Instead of the back-and-forth of scheduling emails (“Are you free Tuesday at 2?” “No, how about Wednesday?”), visitors see only the times when you are actually free and pick one with a single click.

This field reads your Google Calendar in real time. If you have a meeting from 2:00 to 3:00 PM, those slots automatically disappear from the booking form. The result is zero double-bookings and zero scheduling conflicts.

When to Use the Calendar Picker

Use caseWhy it works well
Consultation bookingsClients pick from your real availability
Salon or spa appointmentsCustomers book without calling
Tutoring sessionsStudents see and select open slots
Coaching callsClients book at times that work for both of you
Demo requestsProspects book a product demo without email tag
Service schedulingPlumbers, electricians, cleaners offer available service windows

Setup Walkthrough

Step 1 — Connect Google
  1. Go to Form Forge > Settings > Google.
  2. Click the Connect button.
  3. A new window opens asking you to sign in with your Google account.
  4. Grant Form Forge permission to read your calendar. This is read-only — Form Forge can see your busy times but cannot modify your calendar.
  5. After authorization, you will see a “Connected” status in the settings. Your credentials are stored securely on the Forge API server.
Step 2 — Add the Calendar Picker to Your Form
  1. Open your form in the builder.
  2. Drag the Calendar Picker field from the PRO fields section into your form.
  3. In the field settings, configure:
Available days — Tick the weekdays when visitors may book.

Working Hours — Set the hours when you accept appointments (for example, 9:00 AM to 5:00 PM). Slots that start at or after the end hour are not shown.

Slot Duration — How long each time slot is: 15 minutes, 30 minutes, or 60 minutes.

Advance days — How far ahead the picker should offer slots.

Buffer Time — An optional gap between appointments for preparation or travel (for example, 15 minutes between each booking).

  1. In the form-level Google Calendar integration card, select the Calendar ID if you want Form Forge to check or write events against a specific Google Calendar.
  2. Save the form.

What Visitors See

  • A calendar view showing available dates. Days with no open slots are grayed out.
  • When they click a date, the available time slots for that day appear as clickable buttons.
  • Disabled weekdays show no slots, and times outside the field’s working hours are hidden even when the Google FreeBusy response still contains them. Working hours are interpreted in the WordPress site timezone, while each visitor sees the slot label in their own browser timezone.
  • Busy times from your Google Calendar are automatically hidden when Google is connected.
  • The visitor clicks a time slot to select it. The selected value is stored as a canonical UTC timestamp, and the Submissions screen formats it back into a readable date/time instead of showing raw ISO text.
  • On submit, Form Forge revalidates that the selected slot is future, inside the configured advance window, on an enabled weekday, and inside working hours. In conversational or payment forms, an invalid slot takes the visitor back to the Calendar Picker step before any Stripe capture happens.

After a Booking Is Made

When someone books a time slot through your form:

  • The submission is saved in Form Forge with the selected date and time.
  • You receive your standard admin notification email.
  • The booked time slot remains technically available in the form until you manually add the appointment to your Google Calendar. Form Forge reads your calendar but does not write to it.
Important noteExplanation
Form Forge does not create calendar eventsYou need to manually add the appointment to Google Calendar after reviewing the booking
Double bookings are possible if you delayIf two people book the same slot before you update your calendar, both bookings will go through
Buffer time only applies to form slotsGoogle Calendar events do not automatically include buffer time
Real-world example: You are a freelance photographer. You create a “Book a Portrait Session” form with a Calendar Picker. You set working hours to weekends only (Saturday-Sunday, 9 AM-5 PM), slot duration to 2 hours, and buffer time to 30 minutes. Clients visiting your portfolio site see your real weekend availability and book directly. You receive a notification and add the session to your calendar.

> Tip: Create a dedicated Google Calendar for bookings (for example, “Client Appointments”) rather than using your personal calendar. This way, only genuine scheduling conflicts block availability, not your personal events like “dentist appointment” or “gym.”

> Good to know: Without PRO, the Calendar Picker field is not available. The standard Date and Time fields (free) let visitors pick any date and time, but they are not connected to your calendar and do not show real availability.

Common Mistakes to Avoid

  • Using your personal calendar and forgetting that personal events block booking slots. Use a dedicated booking calendar.
  • Not adding bookings to your calendar promptly. If a new booking comes in and you do not update your calendar, the next visitor might book the same slot.
  • Setting working hours that do not match your actual availability. If you accept bookings from 9-5 but regularly have internal meetings until 10, you will get bookings at 9 AM that conflict with your meetings.

[Screenshot: A Calendar Picker field in a form showing a monthly calendar view with some dates grayed out and a row of available time slot buttons (9:00 AM, 9:30 AM, 10:00 AM, etc.) for the selected date]

Forge AI Assistant Online

Hi! I'm the Form Forge AI assistant. Ask me anything about the plugin — setup, features, troubleshooting, or development.

Just now
Powered by Forge AI · Browse docs