Key takeaways
- The app does not win the first booking: it wins the second one, from the guest who has already stayed.
- Mobile check-in and the digital key are the reasons to download; direct booking is the reason the app pays for itself.
- Without PMS integration, a hotel app is just a brochure: the interface is costed at scoping, never afterwards.
- Upsell works when it is offered at the right moment of the stay, not in a catalogue nobody opens.
- Below a few thousand room nights a year from repeat guests, a web app or a good mobile site is often enough.
Most hotel app projects start from the wrong question: “how do we get people to download our app?”. Nobody installs an app for one night in Lyon. A guest who comes back three times a year to your property, or to one of the eight hotels in your group, will gladly install one — provided it saves them time on every stay.
That is where the economic stake lies: the OTA brought you the guest the first time; it has no reason to take a commission on their second stay. A well-designed hotel mobile app (in French) is first and foremost for that. Mobile check-in, the digital key and upsell are not gimmicks: they are the services that justify the install, and that then make booking direct simpler than going back through the platform.
This guide covers the four building blocks, their real cost, what blocks things technically, and how to decide whether your property needs a native app or not.
The real issue: commission on the returning guest
OTA commissions generally sit between 15 and 25% of the room-night amount, depending on the platform, the contract and the visibility programmes subscribed to. On a one-off guest discovered through a platform, that is the price of acquisition, and it is often justified.
The problem is the loyal guest who keeps booking through the platform out of habit. They already know the hotel. They could book direct. They don’t, for three reasons, always the same:
- Their account and payment methods are saved on the OTA, not with you.
- They think the price is the same everywhere, or even cheaper on the platform.
- Your booking engine is slower than the app they already have in their pocket.
A hotel app answers all three: an account already opened during the first stay, a rate or perks reserved for direct bookings, and a three-screen booking with the information pre-filled.
On the second point, a reminder of the legal framework: since the Macron law of 2015, French hoteliers are free to set a lower price on their own channels than the one published on the platforms. Nothing stops you from displaying a member rate in your app.
The calculation to make before any quote: how many room nights a year are booked through an OTA by guests who have already stayed? Multiply by the average price and by your commission rate. If that annual amount does not clearly exceed the cost of the app and its maintenance, the problem is solved with a booking engine and a CRM, not with an app.
The four building blocks of a useful hotel app
1. Mobile check-in
This is the feature that generates the most downloads, because it arrives at the right moment: a few days before arrival, when the guest is preparing their trip.
A complete mobile check-in journey includes:
- confirmation of dates and expected arrival time;
- entering or retrieving identity details, with a photo of the ID document where required;
- the information for the individual police registration form (“fiche individuelle de police”) for foreign guests;
- electronic signature of the guest registration form;
- saving a payment method or settling the balance;
- preferences (floor, pillow, housekeeping time).
All of this must be written into your PMS, not stored alongside it. If reception has to re-enter what the guest filled in, you have built a form, not a check-in.
The ID document is sensitive personal data that must be protected: encryption, access restricted to authorised staff, deletion once the necessary retention period has ended. Our article on GDPR compliance for a mobile app details these obligations.
2. The digital key
This is the most spectacular feature and the most technically constrained. The phone opens the door over Bluetooth, using the software development kit (SDK) supplied by the lock manufacturer. The app does not “make” the key: it receives it from the hotel’s access management system, which generates it for a given room and period.
Three conditions must be met:
- compatible locks — if they are not, replacing the locks generally costs far more than the app itself;
- an accessible SDK from the manufacturer, sometimes with a contract or licence to negotiate;
- room assignment before arrival, which assumes the PMS exposes it through its API.
Our recommendation: never put the digital key in the first release without having validated these three points in writing. It is the item that derails schedules, not because of the development, but because of the time it takes to obtain access from suppliers.
3. Upsell during the journey
Failed upsell is a “Services” tab with forty lines that nobody opens. Upsell that works is contextual: it arrives at the moment the guest is asking themselves the question.
| Moment | Relevant offer | Why it works |
|---|---|---|
| Check-in, D-3 | Room upgrade, early arrival | The guest is organising their trip and is willing to pay for comfort |
| Check-in, D-1 | Transfer from the station or airport | They have just checked their route |
| Arrival | Breakfast, parking, table at the restaurant | They are discovering the property |
| During the stay | Room service, spa, late check-out | They are on site, the need is immediate |
| Day before departure | Late departure, luggage storage | They are planning their last day |
These services are physical services: the 15 to 30% commissions charged by Apple and Google on in-app purchases do not apply to them. They are collected by your payment provider, with strong authentication, or charged directly to the room bill if your PMS allows it.
4. Direct booking
This is the building block that pays for the other three. It must be faster than the OTA, otherwise it is pointless. In practice:
- account created during the first stay (at mobile check-in), never a separate sign-up form;
- pre-filled information: identity, preferences, tokenised payment method;
- real-time availability and rates, read from your booking engine or channel manager, to avoid any overbooking;
- a visible benefit: member rate, free breakfast, priority upgrade, guaranteed late departure;
- rebooking in one tap: “book the same stay” from the history.
For a group, add multi-property search. For business travellers, downloadable invoices and management of several travellers.
PMS integration: the line that decides the budget
A hotel app without PMS integration is an animated brochure. All the value — check-in, room assignment, posting to the bill, real-time booking — depends on what your PMS agrees to read and write.
The level of integration possible depends on your vendor, your version and your contract. Some expose a modern, documented API; others go through a paid interface gateway; others still only allow read access.
| Function | What the app must be able to do in the PMS |
|---|---|
| Mobile check-in | Read the booking, write the identity, signature and status |
| Digital key | Read the assigned room, trigger key issuance via the access system |
| Upsell and room service | Add a service to the room bill |
| Direct booking | Read availability and rates, create a booking (often via the engine or channel manager) |
| Loyalty | Read the guest’s stay history |
We assess these points at scoping, before any commitment on the budget. It is the only way to avoid the classic nasty surprise: a feature estimated at three weeks that takes eight because the API does not allow what was expected.
Native, web app or nothing at all?
Not every property needs an app in the stores. The decision mainly depends on how often your guests come back.
| Profile | Recommendation | Reason |
|---|---|---|
| Independent hotel, leisure guests with little repeat custom | High-performing booking engine + stay guide as a web app | Nobody will install an app for a single stay |
| Business hotel with regular guests | Native app with check-in and direct booking | Repeat custom justifies the install |
| Multi-property group | Native app with a single account and loyalty | The guest moves from one property to another, the app follows them |
| Tourist residence, long stays | Native app focused on services and the stay | Long stay duration, strong demand for services |
The web app has a real advantage: no download, just a link sent by email or via a QR code in the room. It has two limits: notifications are less reliable than in native, and the Bluetooth digital key is in practice out of reach. To settle the technical question for native, our comparison React Native, Flutter or native gives the criteria.
What a hotel app costs
The timelines below are indicative; each budget is priced on a free quote within 24 hours, at the low prices of our pricing.
| Scope | Contents | Budget | Timeline |
|---|---|---|---|
| MVP | Stay guide, service requests, messaging with reception | On quote | 4 to 8 weeks |
| Full app | Mobile check-in, payment, upsell, direct booking, PMS integration, iOS + Android | On quote | 3 to 4 months |
| Multi-property group | Single account, loyalty, digital key, back office per property | On quote | 5 to 8 months |
| Maintenance | OS updates, PMS changes, fixes, hosting | On quote | ongoing |
Two items are systematically underestimated. Interface fees on the PMS vendor and lock manufacturer side, which are not invoiced by the agency but add to the budget. And maintenance: every iOS or Android update, every new version of your PMS’s API requires work. Our article on the cost of a mobile app in 2026 details how these budgets are built.
The roadmap that works
We recommend delivering in three stages, each measurable.
Release 1 — The stay. Property guide, service requests, messaging with reception, in each guest’s language. Goal: the app is useful during the stay and the guest keeps it.
Release 2 — Before and after. Mobile check-in, payment, contextual upsell, direct booking with a pre-filled account. Goal: measure the share of returning guests who book direct rather than through an OTA.
Release 3 — Access. Digital key, loyalty, multi-property features. Only once supplier access has been obtained and the previous releases have been adopted.
Three indicators are enough to steer: the mobile check-in rate on arrivals, upsell revenue per stay, and the share of repeat stays booked direct. If the third does not move after six months, the problem is not the app: it is the benefit offered to the guest, not visible enough or not strong enough.
The mistakes we see most often
- Starting with the digital key because it impresses the management committee, when the locks are not compatible.
- Asking for an account at first launch. The guest wants to see the Wi-Fi and breakfast time, not fill in a form. The account is created naturally at check-in.
- Showing the same price as on the OTA and being surprised that nobody books direct.
- Forgetting the teams. If reception does not receive room service requests in its usual tool, they will not be handled, and the app will be judged useless.
- Translating into only two languages when a third of the guests come from elsewhere.
In short
A hotel app is judged on one thing: how many of your loyal guests now book with you rather than through a platform. Mobile check-in and the digital key give a reason to install it, upsell increases the basket, direct booking pays back the project. If you want to know what this would mean for your property or group, our page on mobile apps for hotels (in French) presents our approach, and our mobile app development teams scope the PMS integration from the very first workshop.
Have a project? Let’s talk about your PMS, your locks and your share of OTA bookings: contact us or call +33 1 59 13 25 55. We will tell you frankly whether an app is the right investment, or whether a better-designed booking engine is enough.
Sources
- Loi n° 2015-990 du 6 août 2015 pour la croissance et l’activité (in French) — Légifrance
- Qui doit faire remplir une fiche individuelle de police ? (in French) — Service Public Entreprendre
- Les durées de conservation des données (in French) — CNIL (French data protection authority)



