The Calendar Picker field is a Free field type. On the Free plan visitors pick a bookable time slot from the working hours you set. With PRO and a connected Google Calendar, it 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.
With PRO and Google connected, the 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 that visitors are offered only the times that are free in your calendar.
When to Use the Calendar Picker
| Use case | Why it works well |
|---|---|
| Consultation bookings | Clients pick from your real availability |
| Salon or spa appointments | Customers book without calling |
| Tutoring sessions | Students see and select open slots |
| Coaching calls | Clients book at times that work for both of you |
| Demo requests | Prospects book a product demo without email tag |
| Service scheduling | Plumbers, electricians, cleaners offer available service windows |
Setup Walkthrough
Step 1 — Connect Google (PRO)- Go to Fillin Forge > Settings (the Google (Sheets + Calendar) card).
- Click the Connect button.
- A new window opens asking you to sign in with your Google account.
- Grant Fillin Forge permission to access your calendar. Fillin Forge reads your availability (free/busy) and creates calendar events automatically on booking. For an event, your site sends its title, description, start and end time and the attendee’s email address and name to our API (api.avakode.com), and our API creates it in your calendar.
- After authorization, you will see a “Connected” status in the settings. Your credentials are stored on the Forge API server, not in your WordPress installation.
- Open your form in the builder.
- Drag the Date (Calendar) field (the Calendar Picker) into your form.
- In the field settings, configure:
– 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).
- In the form-level Google Calendar integration card, select the Calendar ID if you want Fillin Forge to check or write events against a specific Google Calendar.
- 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. If the calendar cannot be read (Google or the Avakode server does not answer), the picker shows “Could not load free times. Please try again later.” and offers no times, instead of showing times that might be taken.
- 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, Fillin 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 Fillin Forge with the selected date and time.
- You receive your standard admin notification email.
- Fillin Forge automatically creates a Google Calendar event for the booked slot. The event blocks that time in your calendar, so later visitors no longer see it. When the form is sent, Fillin Forge checks the calendar once more. If the time is already taken, or the calendar cannot be checked at that moment, no event is created. If the time is free but the event cannot be created, the event may be missing from your calendar. In each case the booking is saved and marked Time not confirmed on the Submissions screen, and, when the admin notification of the form is on, the form’s notification address gets a short email, so you can check the calendar and confirm the time with the visitor.
| Important note | Explanation |
|---|---|
| Google Calendar event is created automatically | On form submission, Fillin Forge creates a calendar event blocking the booked slot |
| Later visitors see the booked slot as busy | Because the calendar event is created on submission. If the calendar cannot be checked at that moment, no event is created and the booking is marked “Time not confirmed” instead. The same mark appears when the event cannot be created; then the event may be missing from your calendar |
| Buffer time only applies to form slots | Google Calendar events do not automatically include buffer time |
> 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: The Calendar Picker field itself is Free. Without PRO there is no Google Calendar connection: busy times are not hidden and no calendar event is created on booking. 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.
- Relying solely on the calendar event to notify attendees. Fillin Forge creates the Google Calendar event automatically, but attendee invitations are separate — configure the notification email or an auto-reply to reach the booker.
- 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]
—