15% off your first purchase with code WELCOME15, up to 25 GB.

See pricing

Travel fares · Trade fair hotel prices

Trade fair hotel prices: measure the Messe surcharge city by city

Trade fair hotel price monitoring records what rooms near a fairground cost before, during and after a fair, and compares it with the same hotels on an ordinary week. Shop from the countries your exhibitors book from, because most of them are not local.

Pay per GB · No subscription · Prices in EUR, excl. VAT

Illustration. The URLs and values are fictional; the connection string is the real grammar.
€2.00
per GB on ARC Fast, excl. VAT
−44%
at 1 TB (€1.12 / GB)
185+
countries, city targeting
Never
expires — no subscription

Written for

  • Exhibitor travel managers
  • Trade fair and congress organisers
  • Hotel revenue teams in Messe cities
  • Business and data journalists

The short answer

  • A fair surcharge only means something against a baseline: the same hotels, the same weekday pattern, on weeks without a major event.
  • Bauma 2025 gave Munich its highest daily average room rate on record, on 8 April, at 97.2% occupancy (CoStar). Single fair days move a city's whole month.
  • Two thirds of exhibitors at German trade fairs in 2025 came from abroad (AUMA), so the point of sale that matters is the exhibitor's country, not Germany.
  • Fair dates bring minimum stays and prepaid, non-refundable rates. Record the conditions, or a sold-out one-night search looks like no supply.

The problem

What goes wrong without the right IPs

A spike without a baseline is an anecdote

"Rates tripled during the fair" needs a reference week. Compare against the same hotels and weekdays four to six weeks either side, with other events flagged, or the number is not defensible to a budget holder or an editor.

Fair dates hide behind restrictions

Many hotels close one-night stays and sell only the full fair period. Searching a single night returns nothing, which a naive collector records as sold out. Shop the fair's actual pattern (arrive the day before, leave the last day) as well as single nights.

Rates are set months ahead, then move again

Hotels load fair pricing long before the event and adjust it as pickup arrives. A single snapshot a week out misses the story; a weekly series from the announcement shows when the price was set and when it eased.

The overflow goes to the next town

When the city sells out, exhibitors book in neighbouring towns and commute. A study limited to the city boundary understates the market. Define rings by travel time to the fairground, not by postcode.

Local levies change the total

Berlin taxes overnight stays at 7.5% of the net room price and Frankfurt charges a per-person, per-night tourism contribution. Store them separately, or a city looks dearer than it is in the headline rate.

What to collect

What you can collect

Event and venue
Fair name, edition, opening and closing dates, venue. The anchor every other row hangs from.
Hotel and distance ring
Your own hotel ID plus travel time to the fairground, so overflow towns sit in the right ring.
Stay pattern
Single night, full fair period, or arrival the day before. Restrictions only show up when you shop the pattern guests actually book.
Point of sale
The exhibitor market the request came from. A German and an Italian visitor may see different rates and different tax display.
Rate and conditions
Total stay price, nightly average, refundable or prepaid, deposit, minimum stay. The fair premium is often in the conditions, not only the number.
Local levy
City tax or tourism contribution as shown, kept apart from the room rate.
Baseline reference
The matching observation from the reference weeks: same hotel, weekday, length of stay and market.
Observation date
Days before the fair opens. Plotting price against lead time is the chart every organiser asks for.

How it runs

How a collection run works

  1. 01

    Build the fair calendar

    List the fairs and congresses you care about with their dates and venues. Add every other large event in the same city, so you can exclude contaminated weeks from the baseline.

  2. 02

    Fix the hotel panel per city

    Pick the hotels within your travel-time rings and keep the panel stable across the season. Adding hotels halfway through changes the average for reasons that have nothing to do with the fair.

  3. 03

    Shop fair and reference dates from exhibitor markets

    For each fair, shop the fair dates and the reference weeks with the same pattern, from the countries your exhibitors come from. Hold one session per hotel and date so search and room list come from one exit.

    Fair dates and reference dates, same hotel, same market
    import secrets, datetime as dt, requestsBASE = "USERNAME_pool-arcfast_country-de".split("_country-")[0]   # USERNAME_pool-arcfastdef proxy(country: str) -> dict:    user = f"{BASE}_country-{country}_session-{secrets.token_hex(4)}_sesstime-10"    url = f"http://{user}:PASSWORD@proxy.arcproxies.io:8000"    return {"http": url, "https": url}def stay_dates(fair_open: dt.date, nights: int, offsets=(-42, -35, 0, 35, 42)):    """Arrive the day before the fair; same weekday in the reference weeks."""    arrive = fair_open - dt.timedelta(days=1)    for off in offsets:        yield off, arrive + dt.timedelta(days=off), nightsdef shop(hotel_url: str, country: str, fair_open: dt.date, nights: int = 3):    for offset, checkin, n in stay_dates(fair_open, nights):        with requests.Session() as s:            s.proxies = proxy(country)          # e.g. "it", "fr", "us"            r = s.get(hotel_url, params={"checkin": checkin.isoformat(), "nights": n, "adults": 1}, timeout=30)            yield {"offset_days": offset, "checkin": checkin, "status": r.status_code, "html": r.text}
  4. 04

    Classify, then normalise

    Every observation ends as available with a price, closed by restriction, sold out, or not retrieved. Normalise available rates to a total per stay in one currency, with the local levy and tax as separate columns.

  5. 05

    Report the premium as a ratio

    Express the fair rate as a multiple of the matched baseline per hotel, then summarise by ring and star category. Ratios survive currency moves and year-on-year inflation better than absolute differences.

Setup

Recommended setup

Fair monitoring is many small, stateful searches spread over months. Residential exits in the exhibitors' countries do the priced work; city targeting is only needed when you want the local guest's view.

PlanRoleSessionTargetingPrice
ARC Fast
Rotating residential
Default for fair and baseline shops
Residential IPs in Italy, France, the US or wherever your exhibitors book from, so you store the rate they were quoted.
Sticky, 10 minutes per hotel and dateCountry of the exhibitor market
€2.00 / GB
€1.12 at 1 TB (−44%)
ARC Basic
Rotating ISP
Hotel panel and event calendar
Hotel addresses, star ratings and fair calendars change rarely. Refresh them on the cheapest pool and keep them out of the priced run.
RotatingCountry
€0.75 / GB
€0.59 at 1 TB (−21%)
ARC Fast
Rotating residential
The local guest's view
When a story or a hotel's own pricing is about what a German visitor sees, shop from Germany with the fair city as the exit.
Sticky per shopCountry + city (Frankfurt, Cologne, Munich, Berlin, Hamburg)
€2.00 / GB
€1.12 at 1 TB (−44%)
ARC Fast — the local guest's view
http://USERNAME_pool-arcfast_country-de_city-munich_session-k3f9a1x2_sesstime-10:PASSWORD@proxy.arcproxies.io:8000

Prices are list prices in EUR, excl. VAT. Volume discounts apply automatically at checkout — full ladder on the pricing page.

Connect

One connection string per market

The country, city and sticky session are tokens in the username. Change the token, change the market; keep the session handle, keep the IP.

sticky · Germany · 10 min
http://USERNAME_pool-arcfast_country-de_session-k3f9a1x2_sesstime-10:PASSWORD@proxy.arcproxies.io:8000

Swap _country-de for any market you quote. The full grammar is on the residential proxies page.

Illustration

What four fairs in their booking window costs

An illustration with round numbers — your pages, payloads and retry rate will differ. The arithmetic is the real price ladder.

Assumptions

Fairs being tracked at once
4
Hotels per fair
60
Stay dates per hotel (fair + reference)
10
Cadence
daily, 30 days
Exhibitor markets
1 per fair
Weight per shop
300 KB
Bandwidth per month
≈ 22 GB

On ARC Fast

€44.00per month, excl. VAT

22 GB bought in one purchase at €2.00 / GB (list price).

The same 22 GB on ARC Basic: €16.50 at €0.75 / GB. Move down as soon as the cheaper pool holds up.

Weekly shops for fairs more than three months out cut this by roughly a factor of seven. Each additional exhibitor market adds the same amount again, so pick the two or three markets that send the most exhibitors.

Bandwidth never expires, so a bigger single purchase is only ever cheaper per GB. See the ladder.

In depth

Trade fair hotel prices, in depth

How big the trade fair effect on hotel prices is

Large fairs fill a city for a few nights, and hotels price that compression in advance. CoStar's data for Munich during bauma (7 to 13 April 2025) shows the scale: the city's April average daily rate rose 59.3% year on year, occupancy for the month reached 71.0%, and Tuesday 8 April set the highest daily average rate on record in Munich, at 97.2% occupancy.

Germany is where this matters most often. AUMA counted 304 trade fairs in 2025 with about 192,000 exhibitors and more than 12.7 million visitors; 66% of exhibitors and just over a third of visitors came from abroad. That foreign share is why a fair study shopped only from German IPs misses the price most exhibitors actually saw.

Who measures trade fair hotel prices, and what they need

ReaderQuestionWhat to collect
Exhibitor travel managerWhen should we book, and where?Price against lead time, by ring, from your own market
Fair or congress organiserIs accommodation cost putting off exhibitors?Fair premium per edition, compared with competing fairs
Hotel revenue teamAre we priced in line with the city for fair nights?Comp-set rates and restrictions on fair dates; see hotel rate shopping
JournalistIs the surcharge as large as people say?A matched baseline, documented method, dated observations

Corporate travel teams can feed the same series into policy caps; the method for comparing booked rates against public ones is on the corporate travel benchmarking page.

Building a baseline that holds up

  • Same hotels: a fixed panel, chosen before the fair, never topped up with whatever still has rooms.
  • Same weekday pattern: a Monday-to-Thursday fair is compared with Monday-to-Thursday stays.
  • Same lead time: observe the reference dates as far ahead as the fair dates, or you compare an early price with a late one.
  • Clean weeks: drop reference weeks that overlap another fair, a congress, a football final or a public holiday.
  • Same market: the exit country stays constant per series; see why in comparing prices across markets.

Store each daily observation rather than the summary. A time-series layout that survives method changes is described in storing price time series.

Messe city levies to keep out of the room rate

Local accommodation levies differ by city and change over time, so treat them as their own column with the city's current rule beside it. Two examples from the Messe cities:

CityLevyBasisSince
BerlinÜbernachtungsteuer7.5% of the net accommodation price, without extras such as breakfast; business stays includedBusiness stays taxable since 1 April 2024
Frankfurt am MainTourismusbeitragFlat amount per person per night for non-local paying guests, with listed exemptions1 October 2024

For Cologne, Munich and Hamburg, check the city's own page before you add a levy column; do not copy another city's rule.

Collecting fair-week rates responsibly

  • Public, logged-out rates only. Corporate and member rates behind a sign-in are out of scope.
  • Fair dates are when hotel and booking sites are busiest. Shop at night, keep concurrency low and back off on 429 responses.
  • Never place holds or abandon bookings to test availability; observe what search returns.

The general rules for travel sites are in collecting travel data responsibly.

Works with anything that takes a proxy URL

  • Python requests / httpx
  • Playwright
  • Scrapy
  • Crawlee
  • Docker

FAQ

Questions

Something not covered? Write to contact@arcproxies.io.

Why are hotel prices so high during trade fairs?

Because a large fair fills most rooms in the city for a few nights, and hotels price that demand in advance. During bauma 2025 Munich recorded its highest daily average room rate on record, at 97.2% occupancy, according to CoStar.

Which country should a trade fair hotel study shop from?

From the countries the travellers come from. Two thirds of exhibitors at German fairs in 2025 came from abroad, so a study for an Italian exhibitor group should shop from Italy, and a local-guest view from Germany is a separate series.

How far ahead of a fair do hotel prices move?

Hotels often load fair pricing months before the event and adjust it as bookings arrive. Shop weekly from the moment the dates are announced and daily in the final four to six weeks to see both the initial level and the late moves.

Can I target the exact fair city with a proxy?

Yes for Frankfurt, Cologne, Munich, Berlin and Hamburg on the rotating residential pools, with country and city tokens in the username. City targeting matters only when you want the local guest's view; most exhibitor studies need the exhibitor's country instead.

Should city tax be part of the fair premium?

Keep it separate. Berlin's levy is a percentage of the net room price and Frankfurt's is a flat per-person amount, so including them blurs the comparison between cities. Report the premium on the room rate and show levies beside it.

Sources & review

Last reviewed by the ARC Proxies team. Prices are read from the live catalog at build time.

  1. [1]CoStar, via Hospitality Net: Munich hotel room rates spiked during Bauma (14 May 2025)
  2. [2]AUMA (Association of the German Trade Fair Industry): Final statement for 2025 entirely positive: Strong growth among international audiences
  3. [3]Land Berlin (service.berlin.de): Übernachtungsteuer
  4. [4]IHK Frankfurt am Main: Tourismusbeitrag der Stadt Frankfurt am Main

Travel fares

More on travel fares

OverviewProxies for travel fare aggregationAirline, hotel and rail fares change with the point of sale. Query each market from an IP inside it so the fare you store is the fare a traveller is quoted.Deep diveAirline faresCollect airline fares per point of sale: the same flight priced from each market, taxes itemised, one sticky session per search, billed per GB.Deep diveLow-cost carrier faresMonitor low-cost carrier fares where they are sold: on the airline's own site, priced per leg and per seat bucket, with mandatory fees split out. Per GB.Deep diveAirline ancillary pricesTrack airline ancillary prices (checked bags, seats, priority and fare bundles) per route, date and market, so a trip's true cost can be compared.Deep diveRail and bus faresCollect European rail and intercity coach fares per operator, departure and fare family, including yield-managed long-distance tickets. Billed per GB.Deep diveFerry faresMonitor ferry fares by route, sailing, season and vehicle (foot passengers, cars, cabins) from each operator's own public booking site. Per GB.Deep diveFare alertsBuild fare alerts and deal newsletters on verified prices: cheap watch-list polling, live confirmation from the right market before sending, per-GB costs.Deep diveCorporate travel benchmarkingBenchmark booked and negotiated corporate fares against public fares on the same flights, lead times and markets, for TMCs, travel managers and audits.Deep diveTravel metasearchHow to build a travel metasearch engine: partner feeds, cached prices, live re-pricing and look-to-book. Where proxies fit, and what it costs per GB.Deep diveHotel rate shoppingCollect competitor hotel rates per stay date, length of stay and market from local residential IPs. Sticky sessions per shop, billed per GB.GuideWhy flight prices differ by countryThe same flight costs different amounts in different countries because fares are filed and sold per point of sale, and taxes follow the departure airport.GuideDo airlines raise prices when you search?What regulators and researchers found about cookie and IP tracking in airline pricing, and what actually makes a fare change between two searches.GuideHow often flight prices changeFlight prices can change many times a day: filed fares update constantly and seat availability moves with every booking. What that means for collection.

Get started

Buy a gigabyte and try it on your own targets.

No subscription, no sales call. Code WELCOME15 takes 15% off your first purchase, and whatever you do not use is still there next quarter.