Websites for hotels and accommodations: how to design direct bookings
Make availability, room types, and conditions clear throughout the booking path.
SqualiOnline editorial team · 2026-09-07
A hotel or accommodation website can be polished, full of photos, and connected to a booking engine, and still produce mostly generic inquiries. The reason, almost always, is that the guest reaches a certain point in the path, doesn't find the answer they need to decide, and goes looking for it where they know they'll find it: on a portal. This guide helps you find those points, keeping in mind that the direct channel coexists with portals rather than replacing them.
Someone booking decides in a fairly consistent order: are the dates free, do we all fit, what does it really cost, what happens if I have to cancel, where is it. Five questions. Every question the website doesn't answer is a reason to leave.
Availability request versus confirmed booking
The first design mistake is treating them as the same thing because they share the same button on the website. They're two different paths, with different consequences for how the property is run.
| Availability request | Confirmed booking | |
|---|---|---|
| What the guest gets | A promise of a reply | A room held and a confirmation |
| Who has to act afterward | Someone at the property, within a timeframe that matters | No one, with rare exceptions |
| When it's the right choice | Groups, long stays, special requests, periods with rates to be assessed | Standard stays on defined room types |
| Main risk | Replying late: in the meantime the guest has booked elsewhere | Selling a room that isn't actually available, if availability isn't kept up to date |
The practical consequence is organizational before it's technical: if no one answers requests the same day, holidays included during busy periods, the form is a leaking channel. A few room types bookable instantly are better than a request that sits untouched until Monday.
The things a guest needs to be able to check themselves
Checkable means the information sits on the page for the room type the guest is looking at, not in a general terms page nobody opens.
- Actual capacity, with its makeup: two adults and two children don't fit in a double room with a sofa bed just because the sofa is drawn on the floor plan.
- What's included and what isn't: breakfast, parking, tourist tax, final cleaning in apartments, pets.
- Cancellation conditions and any deposit required, written on the room type's own page, not only in the final summary.
- Check-in and check-out times, and what happens when arriving outside those hours: this is the worry of anyone traveling by plane or train.
- The location described in real time and transport, minutes on foot or by car and where to park, not in straight-line kilometers.
Photos count when they show the room type being booked. A single gallery for the whole property is the fastest way to bring the guest in and then disappoint them, and disappointment comes back as reviews.
The handoff to the booking engine
This is the point where the most people are lost, and it's the one almost no one actually tests, because from the office it works. The jump often goes to a third-party system, with a different look and sometimes on another domain: the guest has to understand they're still in the right place.
- Test it from a phone, on mobile data, not the property's Wi-Fi.
- Select the dates on the website and check that they arrive at the engine already set: if they have to be re-entered, many people stop right there.
- Check that the chosen room type is the one preselected, not a list to start over from.
- Compare the price shown on the website with the one at the engine's first step, taxes and surcharges included.
- Go back using the phone's back button and see what happens: if the selection empties out, someone who only wanted to check something has to start over.
- Repeat outside office hours, when connected systems get updated.
An example path: three room types and a family
A property with a double room, a junior suite, and a family apartment gets visits and very few direct bookings. Following the path of a family with two children turns up three breakdowns, all before payment.
- The rooms page lists the three types with marketing names and no stated capacity. The family doesn't know which one applies to them and opens a portal instead, where the filter for four guests answers in a second.
- Whoever gets past the first obstacle enters the dates and the engine replies that there's no availability, with no alternative suggested. The property had the apartment free two days later, and doesn't say so.
- Whoever finds availability only discovers the cancellation conditions at the last step, together with the request for a card. The doubt arrives at the worst moment, just when sensitive information has to be handed over.
None of the three fixes involves the design: capacity belongs in the room type's title, the engine needs to suggest nearby dates when the request can't be met, and the conditions need to be repeated on the room's own page.
Measuring with your own data
Portals show convenient numbers that refer to themselves. To make decisions about the direct channel, you need numbers the property can reconstruct on its own.
- Confirmed direct bookings, kept separate from requests received, and how many requests turned into bookings.
- The time that passes between a request and the reply, measured during busy periods and not as a yearly average.
- Cancellations by channel: a direct booking that cancels often is worth less than it looks.
- The costs of the direct channel laid out in full: engine and payment fees, advertising on the property's own name, and the time of whoever replies. That's a cost too, even if no invoice arrives for it.
A note on attribution: many guests see the property on a portal and then book directly. Direct isn't all net gain and the portal isn't all net cost. Look at total nights sold and revenue per available unit, not the shift between two columns.
What this guide doesn't cover
This guide covers designing the direct channel: what the website needs to say, how the handoff to booking needs to work, what to measure. It isn't a guide to eliminating portals or their fees, and it doesn't promise that outcome: rate strategy, distribution agreements, and channel management are a trade of their own. Pre-launch testing and the diagnosis of a website with visits but few leads each have their own dedicated guide.
Frequently asked questions
Is a request form or instant booking better?
It depends on who responds and how quickly. Instant booking works best for standard room types, where nothing needs assessing. A request form makes sense for groups, long stays, and special cases, but only if someone replies the same day, including on busy weekends.
How do you avoid selling a room that's already occupied?
By keeping a single source of availability and making sure every channel reads from it. You need to decide who updates it and how often, and run a periodic check comparing actual occupancy against what the various channels report, especially after manual changes or blocks.
Should the website show prices even if they change daily?
Yes, at least an order of magnitude and the conditions. A website that says nothing about price sends the guest to look for it on a portal, and that's where the booking happens. An updated starting rate per period is better than silence.
Let's evaluate your property's booking path.
If you’d like to talk it through, the service that handles this is Websites.

