Airbnb / STR Comps + Review Tracker avatar

Airbnb / STR Comps + Review Tracker

Under maintenance

Pricing

Pay per usage

Go to Apify Store
Airbnb / STR Comps + Review Tracker

Airbnb / STR Comps + Review Tracker

Under maintenance

Tracks visible public listing and market snapshot data from Airbnb-like pages without login or private API dependence.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Brian Keefe

Brian Keefe

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

6 days ago

Last modified

Share

Public-page Apify Actor for snapshotting Airbnb-like listing data, market/search listing links, visible review snippets, and simple deltas versus a prior snapshot.

The repository is fixture-backed for deterministic offline testing. Live runs only target public HTML pages and do not use login flows, private APIs, or bypass behavior.

Features

  • Accepts direct listingUrls and optional marketUrls
  • Extracts visible fields only: title, location, rating, review count, visible prices, visible fees, amenities, host name, listing URL, and optional public review snippets
  • Discovers listing links from market/search pages up to maxListings
  • Emits warning rows for login walls, blocked pages, and fetch failures with evidence
  • Computes priceDelta, ratingDelta, reviewCountDelta, isNew, and isMissing against previousSnapshot
  • Includes offline fixture smoke coverage

Input

See .actor/input_schema.json or examples/sample-input.json.

{
"listingUrls": ["https://www.airbnb.com/rooms/1001"],
"marketUrls": ["https://www.airbnb.com/s/denver--co/homes"],
"maxListings": 25,
"previousSnapshot": [],
"includeReviews": false,
"fixtureMode": false
}

Output

Dataset rows include:

  • listingUrl, sourceUrl, hostUrl
  • title, location, hostName
  • rating, reviewCount
  • pricePerNight, cleaningFee, serviceFee, totalPrice
  • amenities, reviews
  • status, warningType, warningMessage, evidence
  • priceDelta, ratingDelta, reviewCountDelta
  • isNew, isMissing, previousStatus
  • snapshotTimestamp

Example output is in examples/sample-output.json.

Local Usage

  1. Install dependencies:
$npm install
  1. Run offline fixture mode:
$npm start -- --input=examples/sample-input.json

Or with Apify locally:

$apify run -i examples/sample-input.json

Tests

npm test
npm run smoke

Both commands run offline and do not depend on live Airbnb pages.

Publish

$apify push

Limitations

  • The actor only uses public HTML and visible page content; it does not authenticate.
  • Real-world page layouts vary. The extractor is intentionally narrow and may need selector updates if public markup changes.
  • Market discovery is limited to links visible in supplied HTML.
  • Warning rows indicate blocked/login-gated pages rather than pretending extraction succeeded.