iCal sync between Airbnb and Booking.com: how to prevent double bookings

By design, iCal sync leaves time between a booking on one channel and the moment the other channel sees it. In that time the same nights can be booked twice. Say you rent out a holiday home on Airbnb and Booking.com and have linked the two calendars with iCal sync. Two guests book the same weekend within an hour, one on each platform, and both of them get a confirmation.
How iCal sync works between Airbnb and Booking.com
An iCal feed is a calendar file with the extension .ics, published at a web address. It follows the open iCalendar standard, RFC 5545 (opens in a new tab), which is why many channels can read it.
A channel that supports iCal gives you an export link for each listing. The file behind that link contains the dates that are booked or blocked on that channel. You paste the link into another channel as an import, and from then on that channel reads the file and blocks the same dates.
Sync in both directions takes two links: Airbnb's export link imported into Booking.com, and Booking.com's export link imported into Airbnb. Set up only one of them and one platform never sees the dates booked on the other.
Each booked or blocked period in the file has a start and an end, and sometimes a short label. The file does not contain your rates, the minimum stay or other restrictions, the guest's name and details, the number of guests, or whether a booking is confirmed or changed.
Why the delay is built in
The channel that imports the file fetches it on its own schedule. The channel where the guest booked sends nothing. Its file is updated, and the other channel reads it at its next fetch.
You don't set that schedule. According to Airbnb's Help Centre (opens in a new tab), your Airbnb calendar updates every three hours and reads the calendars you have connected (checked on 25 September 2026). Other channels set their own interval.
Until the next fetch, Booking.com still shows a night just booked on Airbnb as available, and a guest there can book it. A channel that fetches more often shortens the gap, but a booking made before its next fetch can still overlap with one on the other channel.
The risk grows with every channel you add, such as Vrbo alongside Airbnb and Booking.com, since each is another calendar that can be behind. Last-minute bookings and busy weeks add to it, because that is when more guests are looking for the same few nights.
The moments it goes wrong
Two bookings in the same gap
In the example above, the first guest books the weekend on Booking.com at two in the afternoon. Airbnb last read the Booking.com calendar at half past one, so the weekend stays available on Airbnb until the next fetch at half past four. Forty minutes after the first booking, a second guest books the same two nights on Airbnb, and both bookings are confirmed.
At half past four Airbnb reads the Booking.com calendar and blocks two nights that are already booked on Airbnb as well.
A change or cancellation after the booking
Suppose a guest who booked on Airbnb adds a night, or moves the whole stay to the following week. The new nights are blocked on your other channels only once each of them has fetched the Airbnb file again. Until then a guest on one of those channels can book them.
A cancellation works the other way round. The cancelled nights are available again on the channel where the guest booked, and stay blocked on the other channels until their next fetch. In the meantime a guest who looks for those dates there books somewhere else, and none of your calendars shows that lost stay.
Calendars linked in a chain
Say you have linked three channels in a chain: channel A's calendar imported into channel B, and B's calendar into channel C. Channel C then sees A's dates only if B includes the dates it imported in its own export. Not every channel does, so check it for each channel you use. The safer set-up is a direct import between every pair of channels.
A feed that stops working
An import depends on a single web address, and with a typo in that address it never works. It can also stop later: when the export link is regenerated or reset, when a listing is paused or created again, or when the calendar is removed.
The import then goes on showing the last dates it read, or nothing at all, and you don't always get a warning.
Bookings that never reach a feed
A booking by phone or email is in no channel's file. Nor is a direct booking from a returning guest, or a week you keep the house for yourself. The same goes for a booking on your own website when the website has no calendar link.
Those nights stay available on every channel until you block them by hand. Do that on each channel in turn, on the day the dates are fixed.
What you can and cannot fix within iCal
With three channels, direct imports between every pair take six links, two for each pair, and each link can stop working on its own.
Test every link once it is set up. Block a date on one channel and check that it appears on the other after the next fetch.
A link that passed the test can still stop later, so compare the calendars side by side every week and before a busy period. An import with no recent dates in it has often stopped.
You can turn off same-day and next-day bookings on the channel that gets the most last-minute bookings. On Airbnb the setting is called "advance notice": how much notice you need before a guest arrives. Other channels have a similar setting under their own name. Turning those bookings off costs you the late stays you would otherwise have taken.
Some channels have a button that fetches an imported calendar straight away. Use it after a change or a cancellation instead of waiting for the next scheduled fetch.
Because rates, minimum stays and other restrictions are not in an iCal file, you keep them up to date by hand on each channel. The bookings themselves stay on the channel where they were made, so no single calendar shows every booking with its guest. The channel manager guide explains how an API connection works differently.
When a channel manager is the better choice
These signals point to a channel manager:
- you sell on more than two channels
- you rent out more than one house or room
- you get last-minute bookings, or bookings come in close together at busy times
- you change rates or minimum stays often
- you have had a double booking, or found a broken link when you compared the calendars
A channel manager connects to the big channels by API. A change is sent to them the moment it happens, so no channel has to fetch a file. Availability, rates and restrictions are synchronised together, from one calendar.
In Drimbu the channel manager is part of the booking system and comes with every package, so there is no separate product to buy. It connects more than sixty channels, including Booking.com, Airbnb, Expedia, Agoda and Google.
A booking on one channel makes those nights unavailable on every other connected channel within seconds, so availability is the same on all of them. Rates come from the same calendar and may differ per channel, for instance a higher rate on a channel than on your own website.
A channel booking arrives in the live calendar as an ordinary booking with its invoice and guest page, and its check-out creates the cleaning task. Direct bookings from your own website go into that same calendar. So does a booking you take by phone, and you no longer block those nights on each channel by hand. With more than one house, all of them are in one account, as the page on holiday homes shows.
Checklist to prevent double bookings
- Import every channel directly into every other one, without chains.
- Test every link once, with a date you block for the test.
- Compare the calendars every week and before busy periods.
- Turn off same-day and next-day bookings on the channel that gets the most last-minute bookings.
- Block direct bookings and your own use on every channel as soon as the dates are agreed.
- Keep rates and minimum stays up to date by hand on each channel, or leave that to a channel manager.
- After a change or a cancellation, fetch the calendar by hand where the channel allows it.
- Look at a channel manager once you sell on more than two channels, rent out more than one house or room, or get many last-minute bookings.
Start today with the first two points. If you want one calendar for Airbnb, Booking.com and your own website, start for free with Drimbu.