Those dates don't quite work

A blocked night shouldn't dump you back to an empty calendar. This is a prototype of keeping the trip, not a claim it converts.

20 August 2026 · 5 min read

roost

Kananaskis, Alberta

You asked for Aug 22 – 26. The trip is still here.

August 2026

Stays you can actually book

Monday, August 24 is unavailable. Here are the closest stays you can actually book.

The object at the top is a miss. You asked for August 22 to 26. Monday the 24th is taken. A booking calendar is excellent at that fact. It is bad at what happens next.

Usually the constraint is the whole product. Grey night. Error. Empty grid. The trip lives in your head while you start again. You had already chosen a listing. Intent was sitting there. The interface treated it as an error to clear.

This one keeps the range you asked for. The hole is the 24th. Underneath are stays you can actually book: checkout that morning, arrive the next evening, or keep Friday and go shorter. Pick one. The trip becomes a stay. Nothing is reserved. The listing is made up.

I tried making the calendar the product

I spent a while on the picker. Two months. Prices on every night. Hover that painted checkout the way Airbnb does. A wash that followed the cursor. It was a nicer calendar. It still needed a caption. The value was never the paint. It was what happens after the paint fails.

The failure is the restart

When someone selects the 22nd then reaches for the 26th, they are not asking for two timestamps. They are asking for a four-night stay around a weekend. A night earlier, a night later, a shorter stay that keeps Friday: those are modifications of the same request. Fail the range and most pickers discard it. Never erase the request is the rule underneath this.

A one-day shift is not always something you can book. If the 24th is occupancy, the 21st to the 25th still includes it. The engine has to route around the night, then rank same-length trips first. Price is a tie-break. Pretending the 24th is free would be a different product, and a worse one.

What I would test

Not whether the calendar is pretty. Whether someone who wanted 22–26 can finish without starting over, and whether they understand why the 24th broke it. Three cards might be noise. Ranking duration first is a guess. Some people are holding a flight. Some are holding Friday night.

I have not sat with a guest. I am not claiming this recovers abandoned searches. I am claiming the calendar already has the data to help, and that dumping people back to an empty grid is a choice.

What I am not claiming

I am not claiming Airbnb should ship this. I am not claiming it converts. When something is unavailable, don't just explain the problem. Help me finish the booking. Whether that sentence is a product, or just a nicer dead end, is what I would test next.

Nearly is a Lab prototype. Same object as this note.

Open Nearly in the Lab →