Best WordPress Booking Plugin for Google Calendar Sync

Best WordPress Booking Plugin for Google Calendar Sync

Which WordPress booking plugin syncs with Google Calendar?

Last updated: June 7, 2026

By the WPRentals Team

The best WordPress Google Calendar booking plugin for genuine two-way sync is Bookly, paired with its Advanced Google Calendar Add-on (listed at $64 on its CodeCanyon page, on top of a Bookly PRO license). It is the only plugin we could confirm offers full two-way push-webhook sync, so a Google Calendar change reaches Bookly within seconds. For a simpler setup, Simply Schedule Appointments (60,000+ installs, 5/5 from 154 reviews on WordPress.org) connects through the Google Calendar API with a Quick Connect option (no Google Cloud Console required) and polls every 5 minutes by default.

For vacation rentals, WPRentals connects Google Calendar to WordPress through iCal sync rather than the Google Calendar API, the right mechanism for cross-portal availability.

The distinction matters: API plugins sync in minutes, while iCal plugins sync in 15 minutes to 24 hours, depending on which system pulls.

How does WordPress connect to Google Calendar?

Most articles say a plugin “syncs with Google Calendar” and stop there, hiding what decides whether you get double-booked. Plugins connect in three ways, and the tier sets the real-world latency. This is the iCal vs Google Calendar API sync question.

  • Tier 1: Google Calendar API plus push webhooks. The plugin registers a webhook channel on Google’s servers; when an event changes, Google notifies its HTTPS endpoint within seconds, both ways. Google’s developer documentation on push notifications (last updated April 2026) confirms the webhook fires on change, not a poll. It needs OAuth 2.0 credentials and a valid SSL certificate. The only standalone plugin we could confirm at this tier (no WooCommerce dependency) is Bookly with the Advanced Google Calendar Add-on.
  • Tier 1.5: Google Calendar API plus availability blocking (hybrid). The plugin pushes its own bookings into Google Calendar (outbound, seconds) and polls it to block slots already taken (inbound, every 1 to 5 minutes). Amelia’s documentation says it plainly: “Changes in Google Calendar (such as adding Busy events) affect availability, but do not create or modify bookings in Amelia.” Plugins here include Amelia and Simply Schedule Appointments.
  • Tier 2: iCal/ICS feed exchange. Each platform publishes an .ics URL and polls the other on a schedule. The plugin’s WP cron sets its own pull (usually 15 to 60 minutes); when Google Calendar is the subscriber, Google sets the fetch rate, roughly every 12 to 24 hours. No API, no OAuth, no Google Cloud project. Plugins here include WPRentals, MotoPress Hotel Booking, and WP Booking Calendar.

For a full breakdown of the iCal sync feature across Airbnb, Booking.com, and VRBO, including how to set up each feed URL, see our companion guide.

WordPress booking plugins with Google Calendar sync

Every plugin here syncs differently; the table shows exactly how.

Plugin Sync mechanism Direction Latency GCal feature price WP.org installs
Bookly + Advanced GCal Add-on Google Calendar API + push webhooks Full two-way Seconds to minutes $64 add-on (CodeCanyon) + PRO license 70,000+
Simply Schedule Appointments Google Calendar API (OAuth) Push outbound + 5-min poll block inbound 1 to 5 min Plus plan $99/yr ($129/yr renewal) 60,000+
Amelia Google Calendar API (OAuth) Push Amelia to GCal; GCal events block slots only Minutes outbound; 5-min poll inbound Standard plan $89/yr 90,000+
MotoPress Hotel Booking iCal/ICS feed exchange Two-way (each side imports the other’s URL) 15 min min (internal); 12 to 24 hrs (Google as subscriber) Included in plugin 10,000+ (lite)
WPRentals iCal/ICS feed exchange Two-way (import + export URLs per listing) 30 to 60 min (WP cron); 12 to 24 hrs (Google as subscriber) Included in theme ThemeForest
WP Booking Calendar iCal/ICS feed exchange Import + export Hours Premium only 50,000+

Best for service businesses: Bookly + Advanced Google Calendar Add-on. This is the only full two-way push-webhook sync we could confirm in this category, and it is hands down the best pick for a business living in Google Calendar. The Bookly Help Center is explicit that base Bookly PRO offers three modes (one-way, two-way front-end only, and full two-way with the Add-on), so PRO alone is not enough. Budget for two purchases, not one: a Bookly PRO license plus the $64 Advanced Google Calendar Add-on.

Bookly reports 70,000+ active installs on WordPress.org, and the add-on is listed at $64 on CodeCanyon with a 4.53/5 rating, though on a thin base of just 19 reviews.

Best for simpler setup: Simply Schedule Appointments. Quick Connect removes the Google Cloud Console requirement; SSA handles OAuth itself. The default conflict-check poll is 5 minutes, configurable to 1 minute, per the SSA documentation. Google Calendar events block SSA slots but do not create appointment records, fine for blocking personal events.

Its WordPress.org listing shows a 5/5 rating from 154 reviews.

The Amelia nuance. Amelia has 90,000+ installs and a 4.6/5 from 770 reviews on WordPress.org, and its marketing calls the sync “two-way.” The documentation is more precise: “Changes in Google Calendar (such as adding Busy events) affect availability, but do not create or modify bookings in Amelia.”

It works fine if you block personal events, but a client booking made in Google Calendar will not trigger Amelia emails or records.

For vacation rentals and OTA sync: WPRentals. It manages availability across Airbnb, Booking.com, and Google Calendar, via iCal sync on WP cron at 30 to 60 minute intervals, per wprentals.org (Maria Nestor, April 2026).

Do not pick it for instant appointment sync in a service business; the poll delay is not a bug, it is how iCal works. If you also need payment processing, our guide to the WordPress booking plugin with calendar that handles scheduling and checkout has the shortlist.

What about BirchPress?

BirchPress Scheduler shows up in older WordPress booking guides, so here’s a straight answer. Its free plugin (BirchSchedule) was removed from WordPress.org years ago and has not returned. The vendor site at birchpress.com is still up but shows no recent development activity. Building a production booking system on it is not advisable; Amelia, Simply Schedule Appointments, or Bookly are the live options.

How to set up two-way Google Calendar sync

Once you’ve picked a plugin, let’s walk the lowest-friction path for two-way Google Calendar sync setup: Simply Schedule Appointments Quick Connect, which skips the Google Cloud Console entirely.

  1. In WordPress admin, open Simply Schedule Appointments, then Settings, then the Google Calendar tab.
  2. Click Quick Connect. You’ll see a Google sign-in prompt open in a new window.
  3. Select the Google account you want to sync with, and grant the Calendar read and write permissions it asks for.
  4. If you see a screen saying “This app hasn’t been verified,” don’t worry. Click Advanced, then “Go to Simply Schedule Appointments (unsafe).” That warning is standard for OAuth consent screens awaiting Google verification.
  5. Back in SSA settings, open each Appointment Type and choose which Google Calendar it should sync bookings to.
  6. Set the conflict-check refresh interval (default 5 minutes, minimum 1 minute, per the SSA documentation). Five minutes is fine for most businesses; drop it to 1 minute for busy windows.
  7. Create a test booking on your site. Within a few minutes, you’ll see the event appear in your linked Google Calendar.

Going with Bookly instead? Its full two-way sync takes the longer road: create a Google Cloud project, enable the Google Calendar API, create OAuth 2.0 credentials of the Web Application type, then paste your Client ID and Client Secret into Bookly settings. Your site must run HTTPS with a valid SSL certificate, a hard requirement for push-webhook delivery, per the Bookly Help Center. Push-webhook channels expire and are not renewed automatically; the app must re-register them, and an invalid SSL certificate breaks webhook delivery, per Google’s push notification documentation. Amelia sits in between, offering a “Sign in with Google” flow much like SSA Quick Connect that also skips the Console.

Is Google Calendar sync with WordPress really instant?

Not always, and the honest answer depends on the tier. Whether “is Google Calendar sync instant” gets a yes or no comes down to your plugin’s poll-based calendar sync interval.

  • Tier 1 (Bookly + Advanced Add-on, push webhooks): the webhook fires on change, so latency runs seconds to under a minute, best labeled “near-real-time,” not “instant.”
  • Tier 1.5 (SSA, Amelia, API poll): SSA’s default poll is 5 minutes, down to a 1-minute minimum, per the SSA documentation. A Google Calendar booking blocks availability at the next cycle, a 5-minute window at most.
  • Tier 2 (iCal, plugin-side pull): MotoPress Hotel Booking’s shortest interval is 15 minutes, per the MotoPress Help Center. WPRentals runs 30 to 60 minutes via WP cron, per wprentals.org (Maria Nestor, April 2026).
  • The case that bites: Google as the subscriber. When Google Calendar subscribes to your plugin’s iCal feed via “From URL,” Google controls the schedule and throttles it hard. Google does not publish the interval; independent measurement by the Carly AI blog (March 2026) puts it at roughly 12 to 24 hours, and there is no manual refresh button for subscribed feeds. A booking on your site can take up to a day to show there, whatever your plugin’s internal sync rate.

For real-time decisions, use an API-based plugin that pushes events into Google Calendar, not one waiting on Google’s fetch.

Double-booking race conditions and how to prevent them

“My plugin syncs with Google Calendar” does not guarantee zero double-bookings.

Type A, the same-site race. Two guests submit requests for the same slot within milliseconds, both pass the availability check, and the engine’s atomic confirmation lock decides it: the first confirmed write blocks the dates, and the second fails. WPRentals handles this correctly, per wprentals.org (Maria Nestor, April 2026): “the next attempt for that range fails with an availability error. This locking at confirmation time is what stops true simultaneous double-bookings on a single listing.” Well-built engines solve it.

Type B, the cross-channel race during the sync gap. This is the dangerous one for any booking setup that leans on iCal. A guest books on Airbnb at 2:00pm. Your WP cron runs at 2:30pm. Between 2:00 and 2:30, a second guest books the same dates on your WordPress site, and the plugin confirms it because the Airbnb block has not been imported yet. Both bookings stand, and you cancel one by hand.

But Type B cannot be eliminated with iCal: the race window always equals the sync interval, so you shrink it but never close it. The only fix is true push API sync. Bookly with the Advanced Add-on cuts the window to seconds, since a calendar change triggers a webhook immediately. Staying on iCal, you can still keep the risk low:

  • Set a minimum advance-booking requirement (24+ hours) to cut collision odds during peak periods.
  • Reduce the WP cron interval to the lowest your hosting allows, and prefer a real server-side cron over traffic-triggered WP-cron.
  • Turn on instant-booking at your OTAs so their engine races for the dates first.
  • Treat every external-confirmed booking as needing a manual cross-channel check for the first 30 minutes.

For vacation-rental hosts running Airbnb and VRBO alongside WordPress, our step-by-step guide covers how to sync Airbnb and Vrbo calendars and minimize the overlap window.

Key Takeaways

  • Bookly with its Advanced Google Calendar Add-on (listed at $64 on its CodeCanyon page) is the only WordPress plugin we could confirm offers full two-way push-webhook sync with Google Calendar.
  • Simply Schedule Appointments polls Google Calendar every 5 minutes by default, near-real-time for most service businesses, but not a true push.
  • When Google Calendar subscribes to a WordPress plugin’s iCal feed, Google throttles its refresh to an independently measured 12 to 24 hours (Google does not publish the figure) and offers no manual override.
  • Cross-channel double-bookings from iCal’s sync gap cannot be eliminated with iCal plugins, only minimized with shorter cron intervals and advance-booking buffers.
  • WPRentals syncs via iCal and WP cron (30 to 60 minute typical interval), not the Google Calendar API, making it the fit for vacation-rental OTA management rather than appointment sync.

Frequently Asked Questions

Does WordPress have a booking system with Google Calendar?

Yes, several WordPress booking plugins integrate with Google Calendar, though the type varies. Bookly (with its Advanced Add-on) and Simply Schedule Appointments use the Google Calendar API for near-real-time sync. WPRentals, MotoPress Hotel Booking, and WP Booking Calendar use iCal (.ics) feeds that sync on a schedule, from every 15 minutes to several hours depending on which system is pulling.

Is WP Amelia Google Calendar sync truly two-way?

Partially. Amelia pushes new WordPress bookings into Google Calendar within minutes, and personal events you add in Google Calendar do block Amelia from showing those slots as available. But a booking a client makes directly in Google Calendar stays in Google Calendar, so no confirmation email fires and no Amelia appointment record is created. Amelia’s documentation states: “Changes in Google Calendar affect availability, but do not create or modify bookings in Amelia.”

How often does Google Calendar sync with iCal?

It depends on direction. When your WordPress plugin imports from a Google Calendar iCal feed, the plugin controls the interval, typically every 15 to 60 minutes via WP cron. When Google Calendar subscribes to your plugin’s iCal feed, Google controls the schedule and throttles fetches to roughly every 12 to 24 hours with no manual override. WPRentals, for example, runs its WP cron every 30 to 60 minutes per wprentals.org. API-based plugins like Bookly with its Advanced Add-on bypass this by pushing events directly through the Google Calendar API.

What is the best free WordPress booking plugin with Google Calendar?

No free plugin currently offers full two-way Google Calendar API sync. Simply Schedule Appointments’ free Basic tier and Amelia’s Starter tier ($49/yr per Amelia’s pricing page) both exclude Google Calendar. The lowest-cost route to genuine API sync is Amelia Standard ($89/yr per Amelia’s pricing page) or SSA Plus ($99/yr per SSA’s pricing). For iCal-based sync, WP Booking Calendar (50,000+ installs, 4.7/5 from 652 reviews on WordPress.org) handles iCal import and export, with the full sync in its premium versions.

If you’re building a complete booking stack, not just Google Calendar sync but payments, OTA availability, and iCal portal setup too, the companion guides linked above cover each piece of the puzzle.

You might also want to read:

Share the Post:

Related Posts