The question that ends most of our first conversations with a hotel owner is not about software at all. It is this: when a guest lands on your website and sees a rate, what is the very first number they see, and can you tell me — without opening anything — what that number legally has to include? In eighteen months of asking, nobody has answered it correctly on the first try. Not because hotel operators are careless. Because the answer changed in May 2025, it changed federally, it changed for properties of every size at once, and the people who write booking engines mostly implemented it for the national brands and left everybody else to figure it out from a blog post.
This is the eighteenth trade we have taken apart in this series, and it has an unusual shape. Most of the local businesses we write about have one big number they cannot see: a delivery marketplace's cut, a wire service's rate sheet, a funding company's discount off a death benefit. A hotel's problem is not that the numbers are hidden. Commission rates are broadly known. Tax rates are published. What is genuinely hard about running an independent hotel in Baltimore is that four or five entirely separate charges land on the same folio line, each governed by a different instrument, each with a different base, and no product you can buy knows how they interact here. The result is that a lot of Baltimore properties are quietly displaying a price that a federal rule says is the wrong one, and remitting two taxes computed off a single field that can only be right for one of them.
So this piece is about a rule, a stack of charges, and a booking path. Along the way we will do the arithmetic that actually decides whether an independent hotel makes money, which is not the software bill and never was.
What Baltimore's hotel market actually looks like
Start with counts, because the trade press talks about Baltimore hotels almost exclusively in terms of the Inner Harbor and the convention center, and that is not the market most independents are in.
We pulled the Census Bureau's 2023 County Business Patterns county file and counted it ourselves rather than repeating a figure from an industry report. Under NAICS 721110 — hotels and motels, except casino hotels — Maryland has 678 establishments with paid employees, 18,365 employees and $766.3 million in annual payroll. The county spread is not what most people expect. Prince George's County leads on establishment count with 78, driven by National Harbor and the airport corridor. Anne Arundel follows with 72. Then Baltimore County with 57, Baltimore City with 53, Montgomery with 51, Howard with 46, Harford with 37, Frederick with 31 and Carroll with just 7.
Baltimore City is fourth in the state by number of hotels. It is first by almost everything else, and the reason is size. Those 53 city properties employ 2,831 people — an average of 53.4 employees per hotel, against Baltimore County's 18.3. That is a 2.9 to 1 gap, and it is the difference between a downtown property with banquet space, a restaurant, a night audit and a full housekeeping department, and a select-service hotel off the Beltway with a breakfast bar and a front desk. Payroll per employee runs the same direction and inverts the pattern we have found in most Baltimore trades: the city pays $45,073 per hotel employee against the county's $28,656, a 57 percent premium. In the salon, funeral and florist posts, the city consistently paid worse than its ring. In lodging it pays substantially better, because the city holds the jobs that require a payroll at all.
The other half of the market is nearly invisible in that file. Under NAICS 721191, bed-and-breakfast inns, Maryland has 12 establishments statewide with any paid employees, 3 of them in Baltimore City, and 63 employees in total. That is not a measurement of how many small inns exist in Maryland. It is a measurement of how few of them have anybody on payroll. Add the licensed short-term rental sector — which Baltimore taxes at exactly the same 9.5 percent as the Hilton — and a very large share of the city's transient lodging capacity sits entirely outside the statistics that everyone quotes.
For performance figures we used CBRE's Baltimore market work, which put the market at 65.8 percent occupancy and a $132.29 average daily rate for the trailing four quarters ending in the third quarter of 2024, with the downtown submarket at 9,143 rooms after roughly 2,500 rooms came out of supply. Those are the numbers we will model with for the rest of this piece, because using the market's own performance rather than a flattering assumption is the only way the arithmetic means anything.
A number the city publishes without meaning to
Here is a figure nobody in the trade quotes, because it takes two published numbers and one division to produce. Baltimore's audited financial report for fiscal 2025 records hotel and short-term rental tax revenue of $29,167,889, down 10.6 percent from $32,615,343 the year before. The rate is fixed at 9.5 percent. So the total taxable room revenue in Baltimore City was approximately $307.0 million in fiscal 2025, against $343.3 million in fiscal 2024.
That is a $36.3 million contraction in the city's room revenue pool in a single year, and it is the most honest number in this article. It is derived from the city's own collections rather than from a survey, it includes short-term rentals alongside hotels because the tax does, and it is the pool that every property in Baltimore is competing for. Against it, the difference between a 15 percent commission and a direct booking stops being an accounting detail.
Two published numbers, one division. The city tells you what it collected; the ordinance tells you the rate. Everything in between — how big the market is, and how fast it is shrinking — you can work out at a kitchen table, and almost nobody does.
The rule that changed what a room costs to advertise
On May 12, 2025, the Federal Trade Commission's Rule on Unfair or Deceptive Fees took effect. It is codified at 16 CFR Part 464 and was published at 90 FR 2166 on January 10, 2025. It is short — five sections — and it is worth reading in full, because it is one of the few pieces of federal regulation in the last decade that directly constrains what a small business's website may look like.
Section 464.1 defines a covered good or service as live-event tickets or short-term lodging, including temporary sleeping accommodations at a hotel, motel, inn, short-term rental, vacation rental, or other place of lodging. There is no size threshold, no revenue floor and no carve-out for independents. A 200-room downtown property, a six-room inn in Fell's Point and a licensed short-term rental in Hampden are covered on identical terms.
Section 464.2(a) makes it an unfair and deceptive practice for any business to offer, display, or advertise any price of a covered good or service without clearly and conspicuously disclosing the total price. Then comes the sentence that most operators have not absorbed. Section 464.2(b) requires that the total price be disclosed more prominently than any other pricing information. Not alongside. Not on the next screen. More prominently.
That single requirement invalidates the default layout of a great many independent hotel websites: a large nightly rate in heavy type, with a small grey line beneath it reading plus taxes and fees. If there is any mandatory fee in the booking — a destination fee, a resort fee, a mandatory cleaning fee on a short-term rental — that layout is now backwards, because the number in heavy type is not the total price.
Total price is defined precisely, and the definition is where Baltimore gets interesting:
"Total price means the maximum total of all fees or charges a consumer must pay for any good(s) or service(s) and any mandatory ancillary good or service, except that government charges, shipping charges, and fees or charges for any optional ancillary good or service may be excluded." — 16 CFR § 464.1
And immediately above it in the same section:
"Government charges means the fees or charges imposed on the transaction by a Federal, State, Tribal, or local government agency, unit, or department." — 16 CFR § 464.1
Section 464.2(c) closes the loop: before the guest consents to pay, you must disclose the nature, purpose and amount of anything you excluded from the total price, and the final amount of payment. So excluding taxes from the headline number does not mean hiding them. It means showing them separately, explaining what they are, and showing the final total before consent.
Section 464.4 is worth a line too, because it tells you what to expect next. The rule does not preempt state law that offers greater protection. It is a floor, not a ceiling, and states that decide to go further can.
Four charges, one room, three governments
Now the local layer. A Baltimore hotel folio can carry four distinct charges beyond the room rate, and they come from three different sources.
The first is Maryland's sales and use tax at 6 percent. The chain of authority is worth knowing because operators are often told, incorrectly, that lodging is a "taxable service" in Maryland. It is not on that list — the taxable services list at Tax-General Article § 11-101(m) runs through fabrication, commercial cleaning, security services, credit reporting, telecommunications and, since 2025, information technology and software publishing services. Lodging gets there by a different route. Section 11-101(a-1) defines an accommodation as a right to occupy a room or lodgings as a transient guest; § 11-101(a-4) defines a booking transaction as any transaction in which there is a retail sale of an accommodation; § 11-102(a)(1) imposes the tax on a retail sale in the State; and § 11-104(a)(2)(i) sets the rate at six cents for each exact dollar. The existence of § 11-231 — a narrow exemption for corporate campus dormitories that do not offer lodging to the general public — confirms the general rule, since you do not need to exempt something that was never taxed.
The second is Baltimore City's hotel room tax at 9.5 percent, under Article 28, Subtitle 21 of the City Code. Section 21-2 imposes it on money paid to hotel operators by transient guests, on money paid to hosting platforms for facilitating short-term residential rentals, and on money paid to hosts directly. Section 21-1(c) defines a hotel with a threshold most people find surprisingly low: a building containing sleeping accommodations for more than 5 persons and open to the transient public. Section 21-1(f) defines a transient guest as someone staying fewer than 90 consecutive days.
Baltimore can levy that tax at all only because of a specific carve-out. Tax-General § 11-102(c)(1) forbids counties and municipalities from imposing retail sales or use taxes, with a short list of exceptions — and one of them, at subparagraph (ii)(3), is space rentals. The 9.5 percent exists in the gap that one phrase leaves open.
The third is the one nobody writes about, and it is the reason this article exists.
The 2 percent that is not a tax
In 2019, Baltimore created a Tourism Improvement District by Ordinance 19-250, codified at Article 14, Subtitle 20 of the City Code. Section 20-3 sets its boundaries as identical to the corporate boundaries of the City of Baltimore. The assessment rate was set at 2 percent of gross short-term room rental revenue, and the money goes to Visit Baltimore.
Read the ordinance carefully and it answers a federal question it was never written to answer.
Section 20-1(g) defines the charge: "District special assessment" means a special assessment levied on assessed businesses. On businesses. Not on guests, and not on transactions. Section 20-1(d) defines an assessed business as any hotel as defined in Article 28, § 21-1(c) — which is why short-term rentals pay the 9.5 percent tax but are not assessed businesses for the district.
Section 20-4 designates Visit Baltimore, Inc. as the association that administers the district and receives the funds. And then § 20-6(a)(1) says this:
"The Association is not and may not be deemed an agency of the Mayor and City Council of Baltimore or of the State of Maryland." — Baltimore City Code, Art. 14, § 20-6(a)(1)
The findings in § 20-2 are equally direct. They describe Visit Baltimore as a private and independent not-for-profit, non-stock corporation, and they describe the district itself as a self-funding and industry-managed mechanism, involving no new taxes. The consultancy that formed the district put it even more plainly in its own write-up: the assessed lodging businesses may pass the assessment — not a tax — on to customers.
Now hold that against 16 CFR § 464.1. A charge may be excluded from the total price if it is a fee imposed on the transaction by a government agency, unit, or department. The Baltimore assessment is imposed on the business rather than the transaction, it is imposed for the benefit of an entity that the enabling ordinance states is not an agency of the City or the State, and the ordinance's own findings decline to characterize it as a tax.
It fails all three elements. The practical reading is that if a Baltimore hotel passes the 2 percent to the guest as a mandatory charge, it belongs inside the total price shown first, alongside the room rate and any destination fee — not below the line with the state and city taxes.
There is a fair counter-argument, and it deserves stating. Section 20-9(b)(2) provides that the assessment shall be assessed and collected in conjunction with the City hotel tax assessed and collected by the City, and § 20-9(b)(3) applies all the hotel tax's assessment, refund, collection and enforcement provisions to it. Operationally it behaves exactly like a tax: the City collects it, on the same return, on the same schedule, with the same enforcement. Somebody will argue that operational reality controls. We think the definitional language wins, because the federal rule asks who imposed the charge and on what, not who happens to process the remittance — but we are builders, not your counsel, and this is a question worth putting to a lawyer in writing.
What is not in doubt is that it is a configuration question, and that the answer differs by jurisdiction. Which is precisely the kind of thing a national booking engine will never get right for you, and precisely the kind of thing that belongs in a table an owner can edit rather than in somebody's hard-coded checkout.
What that looks like on one folio
Take a $132.29 room — Baltimore's own average daily rate — with a $20.00 mandatory destination fee, and work the whole stack. Both taxes and the assessment compute on the room plus the mandatory fee, because Article 28 § 21-1(b) defines the base as total gross payments without any deduction for charges or other amounts for any services necessary to complete the transaction.
| Line on the folio | Rate | Amount | Imposed on | Imposed by | Inside FTC total price? |
|---|---|---|---|---|---|
| Room rate | — | $132.29 | the transaction | the hotel | Yes |
| Mandatory destination fee | — | $20.00 | the transaction | the hotel | Yes — mandatory ancillary, § 464.1 |
| Tourism Improvement District assessment | 2% | $3.05 | the business (Art. 14 § 20-1(g)) | Visit Baltimore, Inc. — not a City agency (§ 20-6(a)(1)) | Yes — fails the government-charge test |
| Baltimore City hotel room tax | 9.5% | $14.47 | the transaction | Baltimore City (Art. 28 § 21-2) | No — government charge |
| Maryland sales and use tax | 6% | $9.14 | the transaction | State of Maryland (Tax-General Title 11) | No — government charge |
| FTC total price — shown first, most prominently | $155.34 | ||||
| Final amount of payment — disclosed before consent | $178.95 |
The headline number a guest must see is $155.34, not $132.29 — 17.4 percent higher — and the line that decides whether it is $155.34 or $152.29 is a 2 percent assessment whose legal character turns on one sentence about agency status in a city ordinance from 2019. There is no setting for this in any booking engine we have tested. There is barely a setting for the concept.
Two tax bases, one booking
The second local finding is stranger, and it is the one most likely to be quietly wrong in your system right now.
Maryland's Tax-General Article handles travel intermediaries in two adjacent paragraphs of § 11-101. Subsection (l)(5)(i) says that for the sale of an accommodation facilitated by an accommodations intermediary or short-term rental platform, taxable price includes the full amount of the consideration paid by a buyer, excluding tax remitted to a taxing authority. Then subsection (l)(6)(i) says taxable price does not include — and this is verbatim — a commission paid by an accommodations provider to a person after facilitating the sale or use of an accommodation.
So under the agency model, where you stay merchant of record and pay the commission afterward, that commission drops out of the state's 6 percent base.
Baltimore City's base does the exact opposite. Article 28 § 21-1(b) defines gross amounts of money as total gross payments of any kind or character, without any deduction for charges or other amounts for any services necessary to complete the transaction. A distribution commission is about as necessary to completing that transaction as anything gets.
Run one room night through both:
| Same $132.29 room, same night | Booked direct | Booked via agency-model channel at 18% |
|---|---|---|
| Commission paid after the stay | $0.00 | $23.81 |
| Maryland base — Tax-General § 11-101(l)(6)(i) | $132.29 | $108.48 |
| Maryland sales and use tax at 6% | $7.94 | $6.51 |
| Baltimore base — Art. 28 § 21-1(b) | $132.29 | $132.29 |
| Baltimore hotel room tax at 9.5% | $12.57 | $12.57 |
| Difference in state tax remitted | — | $1.43 less |
One dollar forty-three per room night sounds trivial until you scale it. On our modeled 40-room hotel with 42 percent of business coming through agency channels, that is 4,035 room nights and about $5,770 a year — more than the entire annual property management system bill, riding on a distinction most systems do not model at all.
But the money is not the real point. The real point is structural: the fact that determines which base applies is who was merchant of record, and in most properties that fact lives in the channel manager, not in the property management system's tax configuration. Two taxes, one taxable-amount field, and the field can only be correct for one of them. When we ask to see how a property computes this, the honest answer is usually that the accountant fixes it at the end of the quarter with a spreadsheet, and nobody has ever checked it at the reservation level.
We will say the obvious thing plainly: this is a reading of two statutes, not a ruling, and the interaction of the agency and merchant models with both bases is exactly the sort of question your accountant should confirm in writing for your specific channel contracts. What we are confident about is that it is a real distinction with real dollars attached, and that no product on the market surfaces it.
Being fair to the travel agencies
Before the arithmetic that follows, the honest part.
The online travel agencies earn their money. An independent hotel with 40 rooms and no brand behind it has no realistic way to reach a traveler in Ohio who has decided to spend a weekend in Baltimore and has never heard of your property. Booking.com and Expedia have spent two decades and an enormous amount of capital building exactly that reach, and they carry the marketing cost, the currency handling, the multilingual support, the review corpus and the trust that lets a stranger prepay for a room in a city they have never visited. They also fill nights you would otherwise not fill, and a room that goes empty is worth precisely nothing.
Anybody who tells you to cut the agencies off entirely is selling something. The right frame is not elimination — it is mix. The channels are a customer acquisition cost, and like any acquisition cost, the question is what share of your business should carry it, and whether the guests who found you through a channel once ever come back through your own door the second time.
That second question is where the software argument actually lives, and it is worth being precise about it. Very few independents can answer it, because the reservation record that knows a guest came from Expedia in March and the reservation record that knows the same guest booked direct in September are usually not joined on anything — not on email, not on a profile, not on anything. The agencies mask guest email addresses precisely so that this is hard. If you cannot measure repeat-direct conversion, you cannot know whether a 17 percent commission bought you one stay or five, and you are making the single biggest financial decision in the building on instinct.
What the meter actually costs
Model a real property: 40 rooms, running at Baltimore's own market performance of 65.8 percent occupancy and a $132.29 average daily rate. That is 9,607 room nights a year and about $1,270,910 of room revenue.
Take one room night and follow it through each door it can arrive by.
| Channel | Guest pays | Deducted | Hotel keeps |
|---|---|---|---|
| Agency channel with visibility program, 25% | $132.29 | $33.07 | $99.22 |
| Expedia, standard 18% | $132.29 | $23.81 | $108.48 |
| Booking.com, common 15% | $132.29 | $19.84 | $112.45 |
| Own booking engine, own merchant account (2.9% + $0.30) | $132.29 | $4.14 | $128.15 |
| Phone or walk-in, card present (2.5% + $0.10) | $132.29 | $3.41 | $128.88 |
The spread between the best door and the worst is $29.66 on a single room night, and the direct channel keeps 1.30 times what the most expensive agency channel does. That ratio is the whole argument, and it does not require anyone to say a bad word about the agencies.
Now the annual view, at a 42 percent agency share and a 17 percent blended commission — deliberately mid-range, not the worst case.
| Annual cost line | Basis | Amount | Multiple of the software bill |
|---|---|---|---|
| Travel agency commission | 17% blended on $533,782 of agency revenue | $90,743 | 18.9× |
| Card processing | ~2.9% + $0.30, all channels | $38,229 | 8.0× |
| Tourism Improvement District assessment | 2% of room revenue | $25,418 | 5.3× |
| Property management system | WebRezPro published rate, 40 units × $10 | $4,800 | 1.0× |
The commission line is 18.9 times the software line. But the ranking is not the useful part — the sensitivity is. Move 10 points of business from agency channels to your own site and you keep about $21,605 a year, which is 4.5 times your entire annual software bill. Move one single point and you keep $2,161, which is 45 percent of what you pay for the software in a year.
Two points of channel mix pays for your property management system. Everything after that is margin. And yet in every procurement conversation we sit in, the software is the line that gets negotiated and the channel mix is the line nobody has a number for.
One caveat, stated plainly so the table is not read as a promise: shifting mix is not free. Direct bookings need a booking engine that converts, a rate that a guest can actually find, and enough demand generation that somebody types your name into a search bar in the first place. The $21,605 is what a 10-point shift is worth, not what it costs to achieve. What the number does establish is the size of the prize, and the size of the prize is what tells you how much attention this deserves relative to everything else on the operating statement.
Who publishes a price
We check this in every trade we write about, by requesting each vendor's own pricing address and recording what comes back. On August 4, 2026, we checked sixteen property management systems, channel managers and booking platforms.
Exactly one publishes a complete price. WebRezPro states its rate as $10 per unit per month with a $100 monthly minimum, and then publishes the entire ladder rather than making you infer it: a $100 minimum for 1 to 14 units, $150 for 15 to 24, $250 for 25 to 49, $500 for 50 to 74, $750 for 75 to 99, $1,000 for 100 to 149, and $1,500 for 150 or more, with no system setup fees. It also prints the sentence that matters most in this entire category:
"WebRezPro doesn't charge any commission or transaction fees for reservations generated from its website booking engine." — WebRezPro pricing page, August 2026
That is a vendor putting in writing that the channel it controls is the channel it does not meter. In a trade where the meter is the whole story, saying so out loud is worth more than a discount.
One more vendor gives you something. innRoad publishes a soft estimate rather than a rate — its core system typically falls around $150 per month, month to month, no long-term contract — and explains that pricing is customized by property size and room count. That is not a price, but it is an honest attempt at one.
Everyone else serves a page with the word pricing on it and no dollar figure anywhere on it. Cloudbeds returns a 574-kilobyte page titled Cloudbeds Pricing Plans containing four Request a quote buttons and two Talk to Sales links, and zero dollar signs. Mews presents three named tiers — Essentials, Advanced, Enterprise — with Get Pricing buttons and a thirty-minute consultation call, and no figures. Little Hotelier offers Talk to us three times. Hotelogix, RoomKeyPMS, ThinkReservations, StayNTouch and Hostaway all serve pricing pages with no prices on them. RoomRaccoon returned a 403, ResNexus a 212-byte shell, and eZee Absolute a redirect.
The one we enjoyed most is SiteMinder, whose page carries the title SiteMinder Pricing: Start your 14-day free trial today and four Contact sales buttons — so you are invited to begin a free trial without ever being told what happens on day fifteen.
As a planning figure, since the vendors will not give you one: an independent Baltimore hotel of 30 to 60 rooms running a property management system, a channel manager, a booking engine and a payments integration is realistically spending $6,000 to $18,000 a year, and Maryland's 3 percent tax on information technology services — added by HB 352 and reflected in the taxable services list at Tax-General § 11-101(m)(14) and (15) — now sits on top of the software portion of that.
The part no national platform models
Everything so far is arithmetic anyone can check. This section is the part that is genuinely local, and it is where we would spend the money.
The state built the intermediary a single return, and gave it two years
Buried in the Tax-General Article is a section that is on the books and not yet in effect. Section 11-502.3 carries the notation TAKES EFFECT JULY 1, 2027 PER CHAPTER 638 OF 2025. When it does, it will require the Comptroller to develop a single tax return for use by an accommodations intermediary that aggregates the local hotel rental taxes that an accommodations intermediary is required to collect and remit — and it names the jurisdictions explicitly, including § 21-2 of the Baltimore City Code, along with Baltimore County, Howard, Montgomery and Prince George's.
Read that as an operator and the asymmetry is hard to miss. Maryland looked at the problem of remitting a patchwork of local lodging taxes across jurisdictions, agreed it was burdensome enough to warrant a purpose-built consolidated return, and built that return for the intermediaries. The independent hotel that files its own Baltimore return continues to file it the way it always has: by the 25th of the month, under Article 28 § 21-4, on whatever form the Director of Finance prescribes, forever.
We are not complaining on anyone's behalf — the intermediaries genuinely do file across more jurisdictions than any single hotel does. The point is narrower and it is the same point we made about beer distribution in the brewery piece: the legislature is perfectly capable of writing clean plumbing when it decides something matters, and when it does, it writes it for the party with the lobbyist. The compliance calendar of a 40-room hotel is nobody's project but yours, which is an argument for it being software rather than a wall calendar.
Especially given what happens if you miss. Article 28 § 21-5 is one of the harshest late-payment provisions we have found in any Maryland trade: 1 percent interest per month, plus a penalty of 30 percent of the amount due at 30 to 59 days late, 60 percent at 60 to 89 days, and 100 percent at 90 days or more — and § 21-5(a)(2) applies that penalty to all unpaid taxes regardless of when they first became due. A hundred percent penalty is not a late fee. It is a doubling. And the money at stake is money you already collected from guests and are holding on the City's behalf, which is a category of liability that most small-hotel accounting treats as revenue on the day it lands.
If you also run short-term rentals
A lot of Baltimore lodging operators run both a small property and a handful of rental units, and the second is regulated on entirely different terms. Baltimore City Code Article 15, Subtitle 48 requires a license from the Housing Commissioner before operating a short-term residential rental at all.
Section 48-7(a)(1) is the constraint that shapes the whole market: a person may only be issued a license for his or her permanent residence. There is a narrow grandfather at § 48-7(a)(2) allowing one additional unit, but only where that unit had a successfully executed booking transaction between August 1, 2017 and December 31, 2018, the host owned it by December 31, 2018, and applied within 90 days of the subtitle taking effect. That window closed years ago.
Then § 48-7(a)(3), which is the sentence that catches people out when a property changes hands:
"Short-term residential rental licenses are not property rights, and a short-term residential rental license does not transfer on the sale or any other ownership transfer of a dwelling unit." — Baltimore City Code, Art. 15, § 48-7(a)(3)
The fee is $200 per dwelling unit, biennially, under § 48-9, and licenses expire on the anniversary of issuance with renewal due at least 30 days before expiry. None of that is difficult. All of it is a date that has to live somewhere other than in one person's memory — and if that person leaves, the operation is unlicensed the following month.
The parity clause, and the room it actually leaves you
The last piece of the local layer is contractual rather than statutory, and it is the one that determines what your booking engine is allowed to do.
The United States has no federal ban on rate parity, and no Maryland statute addresses it. Parity clauses in agency contracts remain common and have generally been upheld by US courts, which puts American independents in a very different position from their European counterparts, where regulators have moved hard against wide parity. What has changed is the scope: wide parity — where your direct rate may not be lower than any channel's — has largely given way to narrow parity, where the restriction attaches to your publicly published direct rate.
That distinction is the whole opportunity, because narrow parity conventionally leaves member rates, corporate rates, group rates, packages and loyalty pricing outside the clause. In other words, the legal room to price below the agencies is real, and it sits behind a login or inside a bundle.
Which turns a contract question into a software question, cleanly. A member rate requires accounts, authentication and a way to enroll a guest at checkout. A packaged rate requires the ability to bundle a room with parking, breakfast, a late checkout or a partnership with the restaurant next door, and to price the bundle as one thing. Neither is exotic. Both are things a booking engine either does or does not do, and most of the cheap ones do not — which means the constraint that looks like a legal problem is, in practice, a build decision.
Read your own channel agreements before acting on any of this. They vary, they are negotiated, and the clause in yours is the one that governs. But if you have been told you simply cannot undercut the agencies, that is usually a description of your current software rather than of your contract.
What custom actually costs
Here is what we charge, so the comparison is concrete rather than abstract.
| Package | Fixed price | What it is for a hotel |
|---|---|---|
| Prototype Sprint | $3,500 | The channel-margin report, proven on one month of your own reservation and settlement data. What each channel actually netted after commission, processing, the assessment and the tax base that applied. |
| Online Store — here, a direct booking engine | from $6,000 | Booking path on your own merchant account, configured for Baltimore's charge stack, compliant total-price display, member and packaged rates, gift certificates and deposits. |
| Custom App | from $12,000 | The guest record that survives the channel — one profile joined across agency and direct stays, so repeat-direct conversion becomes measurable. |
| Operations System | from $12,000 | Remittance and licensing calendar, tax-base reconciliation by reservation, assessment tracking, and the liability ledger for deposits and gift certificates. |
Set the first line against the arithmetic above. A $3,500 prototype is roughly 1.6 points of channel mix on our modeled property — meaning if it moves your mix by two points and holds, it has paid for itself inside a year and continues to pay every year after. That is not a claim about our cleverness. It is just what happens when the biggest number in the building has never been measured.
What we would actually build
Not a property management system. We want to be unambiguous about that, because the temptation to rebuild one is exactly the mistake that makes custom software expensive and disappointing.
Cloudbeds, Mews, WebRezPro, innRoad, RoomKeyPMS and the rest handle the reservation record, room inventory, housekeeping status, night audit, rate plans, folio accounting and the channel connections. Those connections in particular are worth real money — maintaining certified integrations against a dozen distribution partners that each change their APIs on their own schedule is a full-time engineering commitment, and it is genuinely what you are paying for. A hotel that is happy with its system should stay on it, and we will say so on the call.
The build sits beside it, in three places.
The booking path. This is where the money is, and it is the piece most independents have outsourced to whatever their property management vendor bundled. Your own booking engine, on your own merchant account, means you keep $128.15 of a $132.29 room instead of $99.22. It also means the total-price display is yours to get right — one compliant number, shown more prominently than anything else, with the assessment inside it and the taxes disclosed below with their nature and purpose named, exactly as § 464.2(c) requires. And it is where member rates and packaged rates live, which is the legal room the parity clause leaves you.
The report nobody sells. True net revenue per channel, per month, after commission, processing, assessment and the tax base that actually applied to each reservation. Your property management system knows the reservation. Your merchant statement knows the settlement. Your channel statements know the commission. Nothing on the market joins those three, because they come from three vendors with no shared key — the same structural problem we found between the point-of-sale and the commission platform in salons, and between the wholesaler invoice and the wire statement in flower shops. It is a small, well-defined piece of work and it produces the number that reorders every other decision.
The calendar and the ledger. Remittance dates by the 25th, short-term rental license expiries, the annual 30-day window in which assessed businesses may petition on the district, and the liability side of deposits and gift certificates — which is money you are holding, not money you have earned, and which most small-hotel bookkeeping records as revenue the day it arrives.
Those three things share a property worth naming: none of them require you to leave the system you already run. They attach to it. That is deliberate, and it is why these builds land in the low five figures rather than the low six.
Build or buy
The honest summary, since this is the one place a list beats prose:
- Keep renting: the property management system, the channel manager and the certified distribution connections. Reservation records, night audit, housekeeping and rate management are solved problems, and the integration maintenance alone justifies the subscription.
- Build: the booking path on your own merchant account, the compliant total-price display configured for Baltimore's actual charge stack, member and packaged rates, the channel-margin report, and the remittance and licensing calendar.
- Decide with a number, not a feeling: measure your current channel mix and your repeat-direct rate first. If 80 percent of your business already comes direct, most of this article is not about you, and we will tell you that on the call rather than after the invoice.
That last point is not false modesty. We have talked two hotel operators out of a build in the last year, both for the same reason: their mix was already good, their booking engine already converted, and the honest recommendation was to spend the money on demand generation instead. A studio that cannot say that is not giving you advice, it is quoting you.
Where to start
If you take one thing from this piece, take the smallest one, because it is free. Open your own website on your phone, the way a guest would, and look at the first price on the screen. Ask whether that number includes every mandatory charge a guest will have to pay, and whether it is more prominent than any other number on the page. If the answer to either is no, you have a compliance question that predates any conversation about custom software, and the fix may be an afternoon of configuration rather than a project.
Then open your channel statements for one month next to your merchant statement for the same month, and try to work out what each channel actually netted. If you can do it in under an hour, your systems are in better shape than most. If you cannot, that is the build — and it is the cheapest thing on our price list.
Questions we get asked
How much does hotel software cost in 2026?
Almost nobody will tell you in public. We checked sixteen property management systems, channel managers and booking platforms on August 4, 2026, and exactly one publishes a complete price. WebRezPro charges $10 per unit per month with a $100 monthly minimum and publishes the whole ladder: a $100 minimum for 1 to 14 units, $150 for 15 to 24, $250 for 25 to 49, $500 for 50 to 74, $750 for 75 to 99, $1,000 for 100 to 149 and $1,500 for 150 or more, with no system setup fees. innRoad gives a soft estimate rather than a rate, saying its core system typically falls around $150 per month. Everyone else serves a page with the word pricing on it and no dollar figure anywhere: Cloudbeds, Mews, Little Hotelier, SiteMinder, Hotelogix, RoomKeyPMS, ThinkReservations, StayNTouch and Hostaway. RoomRaccoon returned a 403, ResNexus a 212-byte shell and eZee Absolute a redirect. The detail we enjoyed most is that SiteMinder's page is titled SiteMinder Pricing: Start your 14-day free trial today, so you can begin the trial without ever being told what happens on day fifteen. As a planning figure, an independent Baltimore hotel of 30 to 60 rooms running a property management system, a channel manager, a booking engine and a payments integration is realistically spending $6,000 to $18,000 a year, and Maryland's 3 percent tax on information technology services now sits on top of the software portion.
What is the FTC junk fees rule and does it apply to my hotel?
It applies to you, and it applies to your own website. The Rule on Unfair or Deceptive Fees is codified at 16 CFR Part 464, was published at 90 FR 2166 on January 10, 2025, and took effect on May 12, 2025. Section 464.1 defines a covered good or service to include short-term lodging, and spells out the scope as temporary sleeping accommodations at a hotel, motel, inn, short-term rental, vacation rental, or other place of lodging — so a 200-room downtown property, a six-room inn in Fell's Point and a licensed short-term rental in Hampden are all covered on identical terms. Section 464.2(a) makes it an unfair and deceptive practice to offer, display, or advertise any price without clearly and conspicuously disclosing the total price. Section 464.2(b) goes further than most operators realize: the total price must be disclosed more prominently than any other pricing information. A rate grid showing a large nightly figure with a small line reading plus taxes and fees is exactly the pattern the rule was written to stop. Total price is defined as the maximum total of all fees or charges a consumer must pay, including mandatory ancillary goods and services, and government charges may be excluded. Section 464.2(c) then requires you to disclose the nature, purpose and amount of anything excluded, plus the final amount of payment, before the guest consents to pay.
Is the Baltimore Tourism Improvement District assessment a tax?
The city's own ordinance says it is not, and that answer has consequences your booking engine has to implement. The district was created by Ordinance 19-250, codified at Baltimore City Code Article 14, Subtitle 20, with boundaries identical to the city limits. Section 20-1(g) defines the district special assessment as a special assessment levied on assessed businesses — on the business, not on the guest and not on the transaction. Section 20-1(d) defines an assessed business as any hotel as defined in Article 28, § 21-1(c). Section 20-4 designates Visit Baltimore, Inc. as the association that receives the money, and § 20-6(a)(1) states plainly that the association is not and may not be deemed an agency of the Mayor and City Council of Baltimore or of the State of Maryland. The findings at § 20-2(c)(2) describe the mechanism as self-funding and industry-managed, involving no new taxes. Set that against 16 CFR § 464.1, which allows you to exclude from total price only fees or charges imposed on the transaction by a Federal, State, Tribal, or local government agency, unit, or department. The assessment appears to fail that test on every element at once: it is levied on the business rather than the transaction, it is collected for a body the ordinance says is not a government agency, and the ordinance's own findings decline to call it a tax. The practical reading is that if you pass the 2 percent through to the guest as a mandatory charge, it belongs inside the total price you show first. We are builders, not your counsel, and this is a question worth putting to a lawyer in writing — but it is a configuration question either way, and no off-the-shelf booking engine knows Baltimore well enough to have an opinion.
What taxes do Baltimore hotels and short-term rentals charge?
Three separate charges land on one room folio, at three different rates, under three different laws. Maryland's sales and use tax applies at 6 percent: Tax-General Article § 11-101(a-1) defines an accommodation as a right to occupy a room or lodgings as a transient guest, § 11-101(a-4) defines a booking transaction as any transaction in which there is a retail sale of an accommodation, § 11-102(a)(1) imposes the tax on a retail sale in the State, and § 11-104(a)(2)(i) sets the rate at six cents for each exact dollar. Baltimore City then adds 9.5 percent under Article 28, § 21-2, which reaches money paid to hotel operators, money paid to hosting platforms for facilitating short-term residential rentals, and money paid to hosts directly. That local tax is possible at all because Tax-General § 11-102(c)(1)(ii)(3) carves space rentals out of the general prohibition on local sales taxes. On top of both, hotels inside the Tourism Improvement District pay a 2 percent assessment. A guest is transient, and therefore taxable, for any stay under 90 consecutive days, per Article 28, § 21-1(f). The city tax and the assessment are due by the 25th of each month, and the penalties in § 21-5 are unusually steep: 1 percent interest per month, plus a penalty of 30 percent of the amount due at 30 days late, 60 percent at 60 days, and 100 percent at 90 days or more.
Does an online travel agency booking get taxed differently from a direct booking?
Yes, and the difference is the commission itself — which means the same room on the same night can carry two different tax bases depending on who took the reservation. Maryland's Tax-General Article § 11-101 handles this in two adjacent paragraphs. Subsection (l)(5)(i) says that where an accommodations intermediary or short-term rental platform facilitates the sale, taxable price includes the full amount of the consideration paid by a buyer, excluding tax remitted to a taxing authority. Subsection (l)(6)(i) then says taxable price does not include a commission paid by an accommodations provider to a person after facilitating the sale or use of an accommodation. So under the agency model, where you remain merchant of record and pay commission afterward, the commission drops out of the state's 6 percent base. Baltimore City's base does the opposite. Article 28, § 21-1(b) defines gross amounts of money as the total gross payments of any kind or character, without any deduction for charges or other amounts for any services necessary to complete the transaction. On a $132.29 room booked through an agency-model channel at 18 percent, the state base is $108.48 and the city base is $132.29 — $6.51 of state tax against $12.57 of city tax on one line of one folio. The fact that decides which base applies is who was merchant of record, and in most properties that fact lives in the channel manager, not in the property management system's tax table. Confirm the treatment of your specific channel contracts with your accountant; what is not in doubt is that the two bases differ.
How much do online travel agencies cost an independent hotel?
Far more than the software, and it is not close. Published and widely reported ranges put Booking.com at roughly 10 to 25 percent with a common rate near 15 percent, and Expedia at roughly 15 to 25 percent for independents with a standard rate around 18 percent; preferred placement and sponsored visibility programs push the effective rate past 25 percent. Model a 40-room Baltimore hotel at the market's own performance — CBRE put the Baltimore market at 65.8 percent occupancy and a $132.29 average daily rate for the trailing four quarters ending in the third quarter of 2024 — and you get 9,607 room nights and about $1,270,910 of room revenue. At a 42 percent channel share and a 17 percent blended commission, that is $90,743 a year in commission. Card processing at roughly 2.9 percent plus 30 cents runs about $38,229. The 2 percent Tourism Improvement District assessment is about $25,418. WebRezPro's published rate for 40 units is $4,800 a year. The commission line is 18.9 times the software line. More useful than the ranking is the sensitivity: moving 10 points of business from agency channels to your own site saves about $21,605, which is 4.5 times the entire annual software bill, and a single point of channel mix is worth $2,161 — roughly 45 percent of what you pay for the software in a year.
How many hotels are there in Baltimore and Maryland?
We counted from the Census Bureau's 2023 County Business Patterns county file rather than repeating a trade figure. Under NAICS 721110, hotels and motels except casino hotels, Maryland has 678 establishments with paid employees, 18,365 employees and $766.3 million in annual payroll. Prince George's County leads on count with 78, then Anne Arundel with 72, Baltimore County with 57, Baltimore City with 53, Montgomery with 51, Howard with 46, Harford with 37, Frederick with 31 and Carroll with 7. The revealing number is size rather than count. Baltimore City's 53 hotels employ 2,831 people, an average of 53.4 per property, against Baltimore County's 18.3 — a 2.9 to 1 gap that is really the difference between downtown convention hotels and highway select-service properties. Payroll per employee runs the same way and inverts the pattern we have found in most Baltimore trades: the city pays $45,073 per hotel employee against the county's $28,656, a 57 percent premium. Bed-and-breakfast inns barely register in the employer statistics at all — 12 establishments statewide with any paid employees, 3 of them in Baltimore City — which tells you how much of that end of the market runs with no payroll and therefore never appears in this file.
Is it worth building custom software for an independent hotel?
Not to replace your property management system. Cloudbeds, Mews, WebRezPro, innRoad, RoomKeyPMS and the rest handle the reservation record, housekeeping status, night audit, rate plans, folio accounting and the channel connections under operational constraints we would not want to rebuild, and a hotel that is happy with its system should stay on it. The case for a build is narrower and much better defined. It is the booking path itself, because that is where the arithmetic lives: a direct booking engine on your own merchant account, configured for Baltimore's actual charge stack, showing one compliant total price first, and carrying the member rates and packaged rates that narrow parity clauses leave open to you. It is also the report nobody sells — true net revenue per channel after commission, processing, the assessment and the tax base that actually applied — because your property management system knows the reservation and your merchant statement knows the settlement, and nothing on the market joins them. Our Prototype Sprint is $3,500 and is usually the right first step, since the channel-margin report can be proven on one month of your own reservation and settlement data before anyone commits to a bigger build. Direct booking stores start at $6,000 and full operations systems at $12,000.