Data · refreshed monthly
OTA Calendar Feed Integrity Report — September 2026
What this is
Every 5 minutes Lemon.cy fetches every connected Airbnb and Booking.com calendar, keeps a snapshot, and logs every decision the sync makes about a booking. This report is the aggregate: how often OTA feeds rename, reshape, trim or withdraw reservations, and what a cleaning schedule had to do about it. Period 2026-08-11 to 2026-09-10.
Headline findings
- 78 reservations were silently re-keyed — the feed dropped a stay under one UID and re-exported it under another with the same checkout. That is 4.3 re-keys per feed per month. A naive sync cancels the cleaning job every time.
- 1,240 forward-trim pins — Booking.com re-exported in-progress stays with the elapsed nights removed on nearly every fetch. Lemon kept the original check-in each time.
- Only 10 automatic cancellations out of 1,445 decisions (0.7%), and 11 confirmed jobs within 24 hours of checkout were held for the host instead of being cancelled on feed evidence alone.
- 67 check-in-only changes left the cleaning job untouched, because only the checkout drives the clean.
Decisions by kind
| Decision | Count | What happened |
|---|---|---|
elapsed_checkin_pinned | 1,240 | The feed re-exported an in-progress stay with its elapsed nights removed (a forward-trim). Lemon kept the original check-in. |
rekey_adopted | 78 | A stay vanished under one UID and reappeared under another with the same checkout. Lemon re-linked it instead of cancelling. |
checkin_only_change | 67 | Only the check-in date moved. The cleaning job (which follows the checkout) was left untouched. |
date_change_applied | 29 | The checkout moved, so the cleaning job was rescheduled and the cleaner told. |
imminent_protected | 11 | A confirmed booking within 24 hours of checkout vanished from the feed. Lemon held it for host review instead of cancelling. |
auto_cancelled | 10 | A booking was absent from a healthy feed for the full confirmation window and was cancelled, with its cleaner notified. |
uncovered_surfaced | 8 | A merged block covered nights no tracked booking explained. Lemon asked the host whether they are a real stay. |
synthetic_promoted | 2 | The feed later split a merged block into its real reservations; the placeholder row adopted the real one. |
Since 2026-02-12 (lifetime)
Lemon has tracked 591 calendar events as bookings since 2026-02-12. 464 of them were later withdrawn by the feed or reclassified — the churn a cleaning schedule has to survive. Per feed, Booking.com withdrew 2.4× as many events as Airbnb (276 vs 114, 9 and 9 feeds).
Estate and method
16 organisations, 24 active properties, 18 active iCal feeds, 2 direct PMS connections. Cyprus (14 of 16 organizations on a Cyprus timezone). Cleaners: 16 active; 15 on Telegram, 3 on WhatsApp.
Read-only aggregate queries over Lemon.cy production tables ical_feed_snapshots and booking_decisions (every fetch of every connected feed is snapshotted; every booking-affecting decision the sync makes is logged with its kind and reason). No property, guest or host identifiers are included. Lifetime figures include cancellations caused by Lemon's own pre-August-2026 booking-identity bug, fixed 2026-08-05; the 30-day decision series is the clean one.
The decision vocabulary is defined in the glossary. The rules that produce these decisions are described in when cleaning software should cancel a job and why Booking.com re-keys reservations.
https://lemon.cy/data/ical-feed-integrity/2026-09/See it on your own calendar.
Paste one iCal link. Lemon shows you every checkout it finds and what it would do with each one. Free for 30 days, no card.
Start free