CozyCozy Scraper avatar

CozyCozy Scraper

Pricing

from $3.00 / 1,000 results

Go to Apify Store
CozyCozy Scraper

CozyCozy Scraper

Scrape lodging listings from CozyCozy's public catalog pages - hotels, vacation rentals, hostels, apartments, and more, across 13 English-language markets, with price, rating, review count, geo-coordinates, and address.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

Crawler Bros

Crawler Bros

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

a month ago

Last modified

Share

Scrape lodging listings from CozyCozy — a hotel and vacation-rental price-comparison / metasearch engine similar to HomeToGo and Trivago. Browse by city or country and accommodation type, or fetch specific CozyCozy catalog URLs directly. No login, no cookies, no paid proxy required.

What this actor does

  • Two modes: browse by location + accommodation type, or fetch specific CozyCozy catalog URLs
  • 17 accommodation types: hotels, vacation rentals, apartments, serviced apartments, villas, resorts, motels, cabins, hostels, short-term rentals, B&Bs, cottages, lodges, holiday parks, chalets, unique stays, and general lodging
  • 13 English-language markets: US, UK, Canada, Australia, Ireland, New Zealand, South Africa, Singapore, Hong Kong, India, Philippines, UAE, Indonesia — each with its own local currency
  • Rich per-listing data: price, rating (0-10 scale), review count, star rating, address, GPS coordinates, description, and photo
  • Filters: minimum rating, minimum official star rating, maximum price per night, minimum review count, keyword search, and strict accommodation-type matching
  • Empty fields are omitted — every record only contains data CozyCozy actually returned

Output per listing

  • title — property name
  • accommodationType — CozyCozy's own type label for this listing (e.g. hotel, motel, aparthotel)
  • ratingScore — 0-10 guest rating (when CozyCozy shows one)
  • reviewCount — number of reviews behind that rating
  • starRating — official star rating (1-5), when available
  • priceFromAmount, priceCurrency — "from" price per night and its ISO currency code
  • priceValidFrom — date the shown price quote is valid from
  • imageUrl — listing photo
  • bookingProvider — which booking platform this specific rate/card came from (e.g. Booking.com, Expedia, Airbnb, Agoda), when identifiable from the listing photo's source. CozyCozy is a metasearch engine, so the same physical property can appear multiple times on one page — once per platform it aggregates rates from, each with its own price/rating — this field lets you tell those apart.
  • description — property description
  • landmarkDistance — distance/context text (e.g. "0.5 miles from Eiffel Tower")
  • address{ streetAddress, locality, postalCode }, when available
  • latitude, longitude — GPS coordinates, when available
  • searchLocation, searchAccommodationType, market — the input that produced this record
  • sourceUrl — the CozyCozy catalog page this listing was found on
  • recordType: "listing", scrapedAt

Input

FieldTypeDefaultDescription
modestringbyLocationbyLocation or byUrl
locationsarray["Paris"]City or country names (mode=byLocation)
accommodationTypeselecthotelsOne of 17 lodging types (mode=byLocation)
marketselectusOne of 13 English-language markets (mode=byLocation)
startUrlsarrayDirect CozyCozy catalog URLs (mode=byUrl)
minRatingnumberDrop listings rated below this (0-10 guest-review scale)
minStarRatingintegerDrop listings whose official star rating (0-5) is below this — distinct from minRating
maxPricePerNightnumberDrop listings priced above this (local currency)
minReviewsintegerDrop listings with fewer reviews than this
strictTypeMatchbooleanfalseDrop off-type fallback listings CozyCozy shows when a city has no exact matches
containsKeywordstringOnly keep listings whose title/description contains this text
maxItemsinteger50Hard cap on emitted records
proxyConfigurationobjectApify proxy (fallback only)Optional; the actor tries a direct connection first

Example input

{
"mode": "byLocation",
"locations": ["Paris", "Tokyo", "New York"],
"accommodationType": "hotels",
"market": "us",
"minRating": 7,
"maxItems": 100
}
{
"mode": "byUrl",
"startUrls": [
{ "url": "https://www.cozycozy.com/us/paris-hotels" },
{ "url": "https://www.cozycozy.com/gb/london-apartments" }
]
}

Use cases

  • Price comparison research — track "from" prices across cities and accommodation types
  • Market analysis — compare hotel vs. vacation-rental pricing and ratings in a destination
  • Travel content — pull curated, rated lodging lists for a city guide or itinerary tool
  • Lead generation — find highly-rated independent hotels/B&Bs in a target market

FAQs

Does this need a CozyCozy account or API key? No. It scrapes CozyCozy's public, search-engine-indexed catalog pages.

How many listings can I get per location? Each catalog page returns up to ~40 listings server-rendered by CozyCozy. Add more locations/types to widen coverage.

What happens if a location has no listings of the requested type? CozyCozy shows other nearby lodging as a fallback. Enable strictTypeMatch to drop those and keep only exact-type matches.

Why only English-language markets? Non-English CozyCozy markets (e.g. /fr/, /de/) use localized location slugs that don't match a plain English city name, so they're out of scope for reliable automatic URL-building in byLocation mode. You can still reach any market's page directly via byUrl mode if you already know the exact URL.

Why do I sometimes see the same property name more than once for one location? CozyCozy is a metasearch/price-comparison engine — the same physical property can appear as multiple separate cards, one per booking partner (Booking.com, Expedia, Hotels.com, etc.), each with its own priceFromAmount, ratingScore, and reviewCount. These are not duplicate scrapes; they're genuinely different rate offers for the same address, exactly as CozyCozy's own page displays them.

Limitations

  • Individual accommodation detail pages and CozyCozy's internal /api and /*/search endpoints are disallowed by robots.txt and are never fetched by this actor — output is limited to fields shown on the public catalog page.
  • CozyCozy's catalog pages don't expose further pagination beyond the first server-rendered batch (~40 listings) per location/type combination.