Channel sync & operations

Direct booking confirmed but Airbnb dates are still open: what to do now

A guest booked direct but the nights are still open on Airbnb or Booking.com. Close the gap in 15 minutes, find the broken link, and fix the flow for good.

Published 25 September 2026 Β· By the BookBed Team
Direct booking confirmed but Airbnb dates are still open: what to do now

A guest just paid you directly. You open Airbnb to check, and the same nights are still bookable. Anyone browsing your listing right now could take them.

Don't start by debugging. Close the dates by hand on every channel first, then work out why the sync didn't do it. The block takes two minutes. Finding the cause takes longer, and a second guest can book while you look.

What should I do in the first 15 minutes?

Block the booked nights manually on every OTA where they're still open, then confirm the direct booking exists in your master calendar before touching any sync settings.

Work through this checklist in order. Every step either removes the double-booking risk or tells you where the break is.

  1. Minutes 0–2: Block the nights on Airbnb, Booking.com, and any other channel. Use each platform's own calendar and block the exact check-in to check-out range. Don't wait for the next sync.
  2. Minutes 2–4: Check whether anyone booked in the meantime. Look at each OTA's reservations for the same dates. If a second booking already landed, go straight to the "if a double booking already happened" section below.
  3. Minutes 4–7: Find the direct booking in your master calendar. Your master calendar is the one tool you treat as the source of truth, such as a PMS, channel manager, or booking system. If the booking isn't there, the break happened before any sync could run.
  4. Minutes 7–10: Confirm the unit and date mapping. Check that the booking sits on the right unit, and that this unit's export link is the one pasted into this listing. If two units' feeds are swapped, one listing never blocks.
  5. Minutes 10–13: Check the direction of each feed. On Airbnb and Booking.com, look at the imported calendars. Your master calendar's export link should appear there. An import set up the other way round won't carry your direct bookings to the OTA.
  6. Minutes 13–15: Force a refresh and note the time. Airbnb has a Refresh option on imported calendars, and Booking.com has Import now. Write down when you did it, so you can check later whether the feed worked.

Once the manual blocks are in, the incident is contained. Everything else is diagnosis.

Why are the dates still open on Airbnb?

Most of the time, the OTA simply hasn't pulled your calendar feed yet, because iCal sync runs on the platform's schedule, not the moment your booking is created.

iCal is a shared calendar file format: your system publishes a link, and each OTA fetches that link on its own timetable. Airbnb's help page on calendar syncing says your Airbnb calendar "automatically updates every 3 hours" from connected calendars, with a manual Refresh for sooner checks. Booking.com's partner guide says it imports connected calendars every two hours and that calendar sync "isn't in real time".

Paper collage of a house shape tied by a thread through a terracotta sand-timer to a calendar panel with one open square

So a gap of a couple of hours can be normal behaviour rather than a fault. If the refresh in step 6 closes the dates, the chain works and you've found your risk window. If the dates stay open after a refresh, something in the chain is broken. Use the table below to find which link.

What you seeLikely breakFix
Booking missing from master calendarDirect form or payment tool isn't connected to itEnter it by hand, then connect the booking flow
Booking on the wrong unitUnit mapping errorMove it and re-check every unit's export link
Master correct, OTA still open after refreshExport link not imported on that OTAPaste the correct unit's export link into the OTA
Export imported, still openLink from an old tool or a deleted unitReplace it with the current link
Dates close, then reopenCircular or duplicate feedsRemove feeds that point back at each other
Only some dates blockedBooking outside the synced range, or a partial blockCheck the date range and block the rest by hand

Avoid circular and duplicate feeds

A circular feed happens when calendar A imports B, B imports C, and C imports A. Each tool re-exports what it received, so one change can bounce around and arrive late, twice, or not at all. Duplicate feeds do something similar: two imported links for the same unit can disagree.

The iCalendar standard, RFC 5545, gives each event a UID, "a unique identifier for the calendar component". When the same stay comes in through two paths, tools may treat the copies as separate events or match them inconsistently. Our inference: keep one path per channel, running from your master calendar to each OTA and from each OTA back to the master, and nothing between OTAs. Our free iCal checker flags duplicate UIDs and overlapping events in a feed.

What if a double booking already happened?

If a second guest booked the same nights before you blocked them, decide quickly which reservation you'll honour, and contact the other guest before they travel.

Which booking you keep depends on the platform rules and penalties you face. Host-cancellation rules differ by OTA and change over time, so read the current policy of the platform involved before cancelling there. For the full recovery playbook, see our guide on how to avoid double bookings.

How do I stop this from happening again?

Make every direct booking land in one master calendar automatically, check availability again right before payment, and accept that iCal-only OTAs will always see changes with some delay.

Here's the flow to aim for, from guest click to OTA block:

  1. One source of truth. One calendar that every channel reads from and writes to. A direct enquiry form plus manual blocking has no source of truth. It depends on you.
  2. Availability check at payment. Recheck the dates as the last step before charging the card, not only when the guest first picked them. That's a recommendation, not a platform rule. It narrows the gap in which two people can buy the same nights.
  3. Instant write to the master calendar. The confirmed booking blocks the dates in the master calendar before the confirmation email goes out.
  4. Export to each OTA. Each unit's export link is imported by each OTA, one link per unit per channel.
  5. Import from each OTA. Each OTA's export is imported back into the master, so OTA bookings block your direct channel too.
  6. Conflict alerts and a daily check. Once a day, scan the next 30 days for nights booked in one place and open in another. It takes five minutes and can catch silent failures, such as a feed that stopped updating weeks ago.

For a deeper look at the trade-off between feeds and direct connections, read our comparison of iCal vs API sync.

The residual window you can't remove with iCal

Even a perfect iCal setup leaves a gap between your booking and the OTA's next fetch. Using the documented schedules above, that's up to about 3 hours on Airbnb and 2 hours on Booking.com. This is a calculation from the platforms' stated cadence, not a measured guarantee. You can shorten your exposure by pressing Refresh or Import now after each direct booking. For same-day and next-day stays, where a clash hurts most, block the OTAs by hand as routine.

When this advice does not apply

  • API-connected channels: if a channel manager connects to an OTA by API rather than iCal, the timings above don't describe that connection. Check your provider's documentation.
  • Hotel-style inventory: if you sell room types with a count, not single units, one booking lowers the count rather than blocking a date. Different fixes apply.
  • Request-to-book flows: if you approve direct requests by hand, the dates aren't booked until you accept. Block them the moment you do.
  • Other platforms: Vrbo and smaller OTAs set their own import schedules. Check each one's help pages rather than assuming the figures above.

What to do next

  1. Block the open nights by hand on every OTA now, if you haven't yet.
  2. List every calendar link for every unit, with its direction and destination. Delete anything circular or duplicated.
  3. Run each export link through the iCal checker and fix any errors it reports.
  4. Add a five-minute daily conflict check for the next 30 days to your routine.
  5. Replace any direct booking form that doesn't write to your calendar automatically.

FAQ

Can I make Airbnb sync my calendar instantly?

Not through iCal. Airbnb's help pages describe an automatic update every 3 hours plus a manual Refresh, and exceeding its update limits means waiting for the next automatic update.

Should I block dates on the OTA or in my master calendar?

In an emergency, both. Long term, block only in the master calendar and let the feeds carry it, so there's one place to change later.

Why did the OTA block some nights but not others?

Check the date range of the booking in your master calendar first. Airbnb also notes that nights blocked on another calendar "may or may not" block on Airbnb when they come from settings like preparation time.

About BookBed: BookBed's direct booking widget writes confirmed bookings into the same calendar that feeds each unit's export link to your OTAs, so there's no separate form to block by hand. OTAs still fetch that link on their own schedule. Get the direct booking widget

Sources

  • Airbnb Help Center, "Sync your home host calendar to other websites" β€” Verified 2026-09-25
  • Booking.com for Partners, "How to synchronize your calendars across channels" β€” Verified 2026-09-25
  • IETF, RFC 5545 "Internet Calendaring and Scheduling Core Object Specification (iCalendar)" β€” Verified 2026-09-25
  • BookBed documentation, "iCal Synchronization" and "Exporting Your BookBed Calendar" at /docs β€” Verified 2026-09-25
Try BookBed

14-day free trial. No card. We'll migrate your data for free.

Get the direct booking widget