Ashish · field notes
All notes
← back to the system map
LiveRevenue & Distribution2 min read

Competitor rate & inventory shop

A one-owner shop now runs the same competitor-rate radar a full revenue team would staff.

Pricing well means knowing two things at once: what competitors charge tonight, and how full I already am. A rate-shopping product for the whole portfolio is expensive, and it still would not know my own open rooms. So I built the thing that knows both.

How it works

Two Python scrapers run on an always-on Mac mini. One drives Booking.com with Playwright, shops each market, and pins my hotels into the comp set. The other reads Atomize's daily feed for open rooms and occupancy tonight and tomorrow, and derives on-the-books ADR from booked revenue over booked rooms. Everything lands in a SQLite log.

It is live. The board refreshes through the day, and a Telegram command (/shop) posts both the rate and inventory tables on demand. Comp sets are seeded per market today, and per-property comp sets are the next fill.

This is the clearest version of the whole bet. One person cannot sit and watch ten markets reprice, but a scheduled agent can, and it turns 'call the market' into a glance. The exceptions I actually act on keep shrinking.

Got an idea? Tell me →More field notes