Skyscanner Flight Scraper — Price Calendar, Fares & Itineraries avatar

Skyscanner Flight Scraper — Price Calendar, Fares & Itineraries

Pricing

from $0.003 / calendar day

Go to Apify Store
Skyscanner Flight Scraper — Price Calendar, Fares & Itineraries

Skyscanner Flight Scraper — Price Calendar, Fares & Itineraries

No-login Skyscanner scraper: cheapest-by-date price calendar, cheapest fares by date, and airport/city search. Plus full live itineraries (times, segments, layovers, both round-trip legs, baggage, multi-source prices, booking links) from Google Flights + Kiwi.com. No API key.

Pricing

from $0.003 / calendar day

Rating

0.0

(0)

Developer

Yuliia Kulakova

Yuliia Kulakova

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Skyscanner Flight Scraper

No-login flight scraper. Its core is Skyscanner's signature cheapest-by-date price calendar — one record per day across up to 12 months with the cheapest direct and indirect price, carrier and operating airport — plus cheapest fares by date and airport/city search. On top of that it returns full live itineraries (exact times, per-segment flight numbers, layovers, both round-trip legs, baggage, multi-source prices and booking links) sourced from Google Flights, with Kiwi.com as a second price source. No login, no API key.

Modes (combinable — set mode)

ModeWhat it returns
calendar (cheapest-by-date) — defaultThe whole price calendar: one record per day across up to 12 months (monthsAhead). Cheapest direct & indirect price per day, cheapest carrier, operating airport, direct-available flag, relative price tier, deep link.
searchThe cheapest fare for a route on a specific date (one-way) or depart+return pair (round-trip). One record per date with the cheapest direct and indirect fare — price, airline, operating airport, agent, deep link. Supports a date range (departDatedepartDateEnd).
places (autosuggest)Resolve an airport/city query or IATA code to place entities: PlaceId, IATA, city, region, country, GeoId, latitude/longitude.
itineraries (itinerary, flights, live)The full live flight list (sourced from Google Flights, cross-priced with Kiwi.com): per itinerary — departureTime/arrivalTime (local ISO), durationMinutes, stopCount, legs[] (flightNumber, airline, aircraft, per-leg times), layovers[], price+currency, baggage (when matched via Kiwi), tags (cheapest/fastest/best), score, carbon, a multi-source priceSources[] table with bestPrice/cheapestSource/sourcesFound. Supports one-way, round-trip (both legs when available) and multi-city.

Quick start

Cheapest-by-date calendar (default):

{ "mode": ["calendar"], "origin": "JFK", "destination": "LAX", "monthsAhead": 6 }

Cheapest fare(s) by date:

{ "mode": ["search"], "origin": "JFK", "destination": "LAX", "departDate": "2026-10-15", "departDateEnd": "2026-10-20" }

Full itineraries (one-way; add "returnDate" for round-trip):

{ "mode": ["itineraries"], "origin": "JFK", "destination": "LAX", "departDate": "2026-10-15", "adults": 1 }

Multi-city itineraries: pass multiCityLegs ([{origin,destination,date}, …]). Places: { "mode": ["places"], "placeQueries": ["Heathrow", "Tokyo"] }.

Dates are auto-corrected: a past or empty departDate is shifted forward automatically, so scheduled runs never query a stale date.

Example — calendar day (real, trimmed — JFK→LAX)

{
"recordType": "calendarDay", "tripType": "one-way", "origin": "JFK", "destination": "LAX",
"departDate": "2026-10-03", "price": 229, "priceType": "direct", "priceTier": "low",
"isDirect": true, "cheapestCarrierName": "JetBlue",
"direct": { "available": true, "price": 229, "carrierName": "JetBlue", "operatingOrigin": "JFK", "stops": 0 },
"indirect": { "available": true, "price": 285, "carrierName": "Alaska Airlines", "operatingOrigin": "JFK", "minStops": 1 },
"deepLink": "https://www.skyscanner.net/transport/flights/jfk/lax/261003/"
}

operatingOrigin/operatingDestination are disclosed because Skyscanner's month grid can aggregate a whole city (a JFK request may surface an EWR/LGA quote); requestedOriginMatch/requestedDestinationMatch flag mismatches, and strictAirport: true drops non-matching airports. indirect.minStops is a floor (1) — an indirect fare can involve more than one stop.

Example — itinerary (real, trimmed — JFK→LAX one-way)

{
"recordType": "itinerary", "source": "google_flights", "tripType": "one-way",
"origin": "JFK", "destination": "LAX", "price": 219, "currency": "USD",
"departureTime": "2026-10-15T15:43:00", "arrivalTime": "2026-10-15T18:53:00",
"durationMinutes": 370, "stopCount": 0, "isDirect": true,
"legs": [ { "flightNumber": "B61523", "airlineCode": "B6", "airlineName": "JetBlue",
"aircraft": "Airbus A320", "from": "JFK", "to": "LAX",
"departureTime": "2026-10-15T15:43:00", "arrivalTime": "2026-10-15T18:53:00", "durationMinutes": 370 } ],
"tags": ["best"], "score": 96,
"baggage": { "carryOn": 1, "checked": 0, "personal": 1 },
"priceSources": [ { "source": "google_flights", "price": 219, "currency": "USD" },
{ "source": "kiwi", "price": 230, "currency": "USD" } ],
"bestPrice": 219, "cheapestSource": "google_flights", "sourcesFound": 2,
"bookingLink": "https://www.google.com/travel/flights/search?tfs=..."
}
  • departureTime/arrivalTime are airport-local wall-clock (YYYY-MM-DDTHH:MM:00), each leg with its own times.
  • Round-trip returns both legs (outbound+return+round-trip total) for the top roundTripReturnDetail outbound options; hasReturnDetail flags whether return-leg segments were resolved (set roundTripReturnDetail: 0 for the fast, outbound-only mode).
  • Multi-city returns full itineraries for every leg, grouped by multiCityId; each leg is priced one-way (the true combined multi-city fare may differ).
  • Multi-source & baggage — with compareSources: true (default) each itinerary is matched to Kiwi.com by flight-number sequence, adding a Kiwi priceSources[] row and the baggage allowance. Itineraries with no Kiwi match keep sourcesFound: 1 and baggage: null (honest, not faked); city-name (non-IATA) routes skip the Kiwi step.

Pricing

Pay-per-event — billed only for records actually delivered:

EventPrice
Run start$0.01
Calendar day / fare$0.003
Itinerary$0.005
Place$0.001

Example: a 2-month cheapest-by-date calendar (~61 days) ≈ $0.19. Set a Maximum cost per run in the run options to cap spend.

Proxy

A proxy is required and the recommended default is preselected for each mode (country auto-pinned to market); a cheaper override is available. An Apify account with a paid proxy plan is needed.

Scope & honest notes

  • Full itineraries are sourced from Google Flights (no key) and cross-priced against a second source, Kiwi.com — Skyscanner's own live itinerary search isn't reachable for no-login callers, so, like the leading flight-data actors, this actor aggregates alternative sources for the itinerary list. Every itinerary record discloses its source.
  • The calendar / search / places modes are Skyscanner-native (cheapest-by-date, cheapest fares, place entities) — the differentiator over a plain itinerary scraper.
  • baggage is filled only when an itinerary matches a Kiwi fare (roughly half of itineraries on IATA routes); otherwise it is null. Calendar/search fares are day-granular cheapest quotes, not per-minute itineraries.

Scrapes only public, non-authenticated endpoints. No login, no personal data. You are responsible for complying with the source sites' Terms of Service and applicable law. For lawful fare-tracking, route discovery, price-alert and travel-content use.