# Data qualityData qualityThe degree to which data is fit for purpose: accurate, complete, consistent, timely, valid and unique. Poor quality data undermines analytics, reporting and AI.Voir la définition complète → metrics that keep hospitality systems trustworthy
A 400-room hotel exports its PMS (Property Management System) reservation file for the night audit and the file contains three rows for the same guest, two different room-type codes for the same physical room ("DBLK" and "DK" both meaning "Double King"), a check-out date that precedes the check-in date, and a rate plan that was deleted from the system two years ago. This is not a hypothetical. It is a Tuesday. And every downstream number, RevPAR (Revenue Per Available Room) forecasts, loyalty point balances, housekeeping schedules, depends on that file being right.
This lesson shows how hospitality teams turn "the data looks messy" into a measurable, monitorable score.
Hotel and travel data has structural reasons to be dirtier than, say, retail transaction data:
Before scoring quality, know what you are scoring:
| Dataset | System of record | Feeds |
|---|---|---|
| Reservations | PMS / CRS | Revenue management, forecasting |
| Rate plans and inventory | RMS | Channel manager, OTAs (Online Travel Agencies) |
| Guest profiles | CRMCRMCustomer Relationship Management: software and strategy to manage and analyse customer interactions throughout their lifecycle.Voir la définition complète → / loyalty platform | Marketing, personalization |
| Folio and payments | PMS / POS (Point of Sale) | Finance, audit |
| Housekeeping status | PMS / operations app | Front desk, staffing |
Each has its own refresh cadence and its own failure modes. A reservation record is wrong if it duplicates; a rate plan is wrong if it is stale; a guest profile is wrong if it is incomplete.
Data qualityData qualityThe degree to which data is fit for purpose: accurate, complete, consistent, timely, valid and unique. Poor quality data undermines analytics, reporting and AI.Voir la définition complète → is usually judged on four dimensions. Each can be turned into a percentage score.
Definition: the share of required fields that are actually populated.
Worked example: a batch of 10,000 reservation records requires 8 mandatory fields (guest name, arrival date, departure date, room type, rate code, channel, email, payment tokentokenA token is the basic unit of text that language models process, often a word fragment, whole word, or punctuation mark rather than a single character.Voir la définition complète →). If 400 records are missing at least one mandatory field:
Completeness = (Total records - Records with any missing mandatory field) / Total records
= (10,000 - 400) / 10,000
= 96%A commonly cited operational target in hospitality data teams is completeness above 95 to 98% for guest-facing and revenue-critical fields (industry practice estimate, not a regulatory threshold).
Definition: the share of records that correctly reflect reality, verified against a trusted source (a signed folio, a GDS confirmation, a payment processor record).
Worked example: sampling 500 reservations against payment processor records, 15 show a room rate that doesn't match what was actually charged.
Accuracy = (500 - 15) / 500 = 97%Accuracy is harder to automate than completeness because it needs an external reference point, which is why most hotel groups only sample rather than check every record.
Definition: the share of records that use the same value, format, or code across systems for the same concept.
This is exactly the room-type code problem from the hook. If the PMS uses "DBLK" and the channel manager pushes "DK" and the RMS has "DBL-KKThe average number of new users each existing user generates through referrals. Above 1.0, growth compounds on itself and becomes exponential.Voir la définition complète →" for the identical room, that is a consistency failure, even though every individual field is "complete" and even "accurate" in isolation.
-- Simple consistency check: find room-type codes
-- that map to the same description but different codes
SELECT description, COUNT(DISTINCT room_code) AS code_variants
FROM room_type_mapping
GROUP BY description
HAVING COUNT(DISTINCT room_code) > 1;A result greater than zero rows means your mapping table has drift, exactly the kind of thing that silently breaks a revenue report when "Double King" revenue gets split across three codes instead of aggregating into one.
Definition: how current the data is relative to when a decision needs it.
Example: an RMS should reflect last night's occupancy by 6am for the morning rate decision. If the overnight batch job that syncs PMS to RMS runs late and finishes at 9am, every rate decision made before 9am used stale occupancy data. Freshness is often tracked as data latency, the time gap between an event happening (a guest checks out) and it being reflected in the reporting system.
A single quality score is a snapshot. Governance is what keeps it from decaying. Hospitality groups typically run:
This connects directly to guest-facing regulation too: under the EU's GDPR (General Data Protection Regulation) and similar frameworks like the California Consumer Privacy Act (CCPA), guest profile completeness and accuracy aren't just operational nice-to-haves, they're tied to a guest's legal right to access or correct their own dataown dataData collected directly from your own customers and prospects through your own channels: your most reliable and privacy-compliant source.Voir la définition complète →. A guest profile duplicated across three systems makes that right hard to honor in practice. See the ICO's guidance on data quality and accuracy for the regulatory framing.
Vérification des acquis
1. Why is hospitality data structurally more prone to quality issues than a typical single-channel retail transaction system?
2. A hotel's PMS shows the same physical room type coded as both 'DBLK' and 'DK'. What kind of data quality issue does this represent?
3. A reservation record shows a check-out date earlier than the check-in date. Why is this significant for a data quality strategy, beyond being an obvious data entry error?
4. Select ALL correct answers about the root causes of hospitality data quality problems described in the lesson.
Sélectionnez toutes les réponses correctes.
5. Select ALL correct answers about why a deleted rate plan still appearing in a reservation file is a meaningful data quality concern.
Sélectionnez toutes les réponses correctes.
There is no single global regulator publishing hospitality data-quality thresholds, so benchmarks here are industry practice estimates, not law:
Treat all of the above as directional, not audited industry statistics.
Take the messy export from the hook: 10,000 reservation rows.
1. Deduplicate on guest name + arrival date + room number: 250 exact duplicates removed. Duplicate rate = 2.5%.
2. Completeness check on the remaining 9,750: 380 missing a mandatory field. Completeness = (9,750-380)/9,750 ≈ 96.1%.
3. Consistency check on room-type codes: mapping table shows 5 description groups with more than one code, affecting 620 records. Consistency = (9,750-620)/9,750 ≈ 93.6%.
4. Freshness check: last sync to RMS was 14 hours ago, within the 24-hour tolerance, so freshness passes.
A composite quality score (a simple average across the three checked dimensions here) would be roughly (96.1 + 93.6 + 97.5 duplicate-adjusted)/3 ≈ 95.7%, still short of a 98% target, flagging the room-type mapping table as the priority fix, not the completeness of guest names.
That prioritization is the real value of scoring: it tells a data team where to spend limited cleanup effort first.