Skyscanner Scraper
Pricing
from $1.00 / 1,000 flights
Skyscanner Scraper
Skyscanner Scraper: Scrape Skyscanner flight prices for any route and date: airline, flight numbers, times, stops, layovers and every booking site with its price and link. One-way or return. Export to CSV, JSON or Excel, schedule runs or use the API.
Skyscanner Scraper - Flight Prices, Airlines & Booking Links
What is Skyscanner Scraper?
Skyscanner Scraper is a tool that lets you scrape flight prices from Skyscanner: airlines, flight numbers, departure and arrival times, stops, layovers, and every booking site with its price and link. Type where you fly from and to, pick your dates, click Start, and download the flights as Excel, CSV or JSON.
- ⚡ Speed: most runs finish in 10 to 40 seconds; 300 flights from three routes took about 40 seconds in our test
- 🛫 Every itinerary Skyscanner finds: often 300 to 2,000 flights per route
- 💳 Every seller: each flight lists all the airlines and travel sites that sell it, cheapest first, with ratings and a booking link
- 🔓 No login, no API key: only public search results
- 💸 Free to try: the $5 of free usage every Apify account gets each month covers about 5,000 flights
What can Skyscanner Scraper do?
- Scrape Skyscanner flight prices by airport code or city name.
JFK,LHR,NYC,LondonandNew Yorkall work. A city searches all of its airports. - Scrape one-way or round-trip flights. Leave the return date empty for one-way.
- Scrape many routes in one run. Add as many searches as you need.
- Dates that never go stale. Enter a date, or a time from today such as
30 days, so a saved task or schedule always searches ahead. - Travellers and cabin. Adults, children, infants, and economy, premium economy, business or first class, for every route or route by route.
- Sort like the website. Best, Cheapest or Fastest, and keep only direct flights if you want.
- Any Skyscanner country and currency. Price in USD, EUR, GBP and more, from the US, UK, German or any other Skyscanner site.
- Best, cheapest and fastest flags on every row, so you can spot Skyscanner's top picks at a glance.
What data can you extract from Skyscanner?
| ✈️ Flight | 🕒 Schedule | 💰 Price and booking |
|---|---|---|
| Airlines and flight numbers | Departure and arrival (local time) | Total price and price per person |
| Operating airline (codeshares) | Duration of each leg and in total | Price as shown on Skyscanner |
| Airports, cities and countries | Stops and layovers with their length | Cheapest seller and its link |
| Every segment of every leg | Overnight arrivals (day change) | Every seller with rating, reviews, price and link |
| Self-transfer itineraries | Airport changes during a layover | Change, cancellation and refund policy |
How to scrape Skyscanner flights
- Create a free Apify account (no credit card needed).
- Open Skyscanner Scraper.
- Type where you fly From and To (an airport code, a city code or a city name), and pick a Departure date and, for a round trip, a Return date.
- Set travellers, cabin class, sort order and how many flights you want per route, then click Start.
- When the run finishes, download your flights as Excel, CSV, JSON, HTML or XML.
How much does it cost to scrape Skyscanner flights?
You pay $1.00 per 1,000 flights. Platform usage is included in that price, so there is nothing else to pay for a run. Max flights per route decides the cost of a run.
Example: three routes with 100 flights each give 300 flights, which cost $0.30. 1,000 flights cost $1.00.
Every Apify account gets $5 of free usage each month, so you can try it at no cost. See the Pricing tab for details.
⬇️ Input
| Setting | What it does |
|---|---|
| From | Where you fly from: JFK, NYC, New York |
| To | Where you fly to: LHR, LON, London |
| Departure date | A date up to 13 months ahead, or a time from today such as 30 days (default) |
| Return date | Leave empty for one-way. A time from today such as 37 days also works |
| More routes | Extra searches for the same run, each with its own dates, travellers and cabin if you like (see below) |
| Adults / Children (2-11 years) / Infants (under 2) | Who is travelling: up to 9 in all, at most one infant per adult |
| Cabin class | Economy, premium economy, business or first |
| Sort by | Best, Cheapest or Fastest, as on Skyscanner's tabs |
| Direct flights only | Keep only non-stop itineraries |
| Max flights per route | 1 to 5,000; the default is 100 |
| Currency / Market / Language | For example USD / US / en-US, or GBP / UK / en-GB |
| Connection settings | The default works for most runs |
A round trip from New York to London, a month from now:
{"origin": "New York","destination": "London","departDate": "30 days","returnDate": "37 days","maxResults": 100}
Several routes in one run. A route can set origin, destination, departDate, returnDate, adults, children, infants and cabinClass. A field left out of a route takes its value from the main fields, and "returnDate": null makes that route one-way. Sort, filters, max flights, currency, market and language apply to every route. A route with any other field fails with a message that lists the fields it can set:
{"origin": "JFK","destination": "London","departDate": "2026-11-01","returnDate": "2026-11-08","routes": [{ "origin": "LAX", "destination": "Tokyo", "returnDate": null },{ "origin": "Chicago", "destination": "CDG", "departDate": "2026-12-10", "returnDate": "2026-12-17", "adults": 2, "cabinClass": "business" }],"sortBy": "cheapest","directOnly": true}
⬆️ Output
One row per flight itinerary. A real one-way row from Los Angeles to Tokyo (shortened: a row lists every seller):
{"route": "LAX-TYO","origin": "LAX","originName": "Los Angeles International","destination": "TYO","destinationName": "Tokyo","departDate": "2026-11-12","returnDate": null,"tripType": "one-way","adults": 1,"cabinClass": "economy","currency": "USD","itineraryId": "13416-2611120930--30816-0-14788-2611131425","price": 403.32,"pricePerPerson": 403.32,"priceFormatted": "$404","isBest": true,"isCheapest": false,"isFastest": false,"totalDurationMinutes": 715,"maxStops": 0,"airlines": "Zipair","outboundDeparture": "2026-11-12T09:30:00","outboundArrival": "2026-11-13T14:25:00","outboundStops": 0,"cheapestAgent": "Super.com","bookingUrl": "https://www.skyscanner.com/transport_deeplink/4.0/US/en-US/USD/spus/1/13416.14788.2026-11-12/air/trava/flights?itinerary=...","bookingOptionsCount": 14,"isSelfTransfer": false,"farePolicy": { "changeAllowed": false, "partlyChangeable": false, "cancellationAllowed": false, "partlyRefundable": false },"legs": [{"from": "LAX", "fromAirport": "Los Angeles International", "fromCity": "Los Angeles", "fromCountry": "United States","to": "NRT", "toAirport": "Tokyo Narita", "toCity": "Tokyo", "toCountry": "Japan","departure": "2026-11-12T09:30:00", "arrival": "2026-11-13T14:25:00","durationMinutes": 715, "stops": 0, "dayChange": 1,"carriers": "Zipair", "operatedBy": "Zipair", "flightNumbers": "ZG23","segments": [{ "flightNumber": "ZG23", "airline": "Zipair", "airlineCode": "ZG", "operatedBy": "Zipair","from": "LAX", "to": "NRT", "departure": "2026-11-12T09:30:00", "arrival": "2026-11-13T14:25:00", "durationMinutes": 715 }],"layovers": []}],"bookingOptions": [{ "agentName": "Super.com", "agentId": "spus", "isAirline": false, "agentRating": 4.04, "agentReviewCount": 1781,"agentPrice": 403.32, "agentUrl": "https://www.skyscanner.com/transport_deeplink/4.0/US/en-US/USD/spus/1/..." },{ "agentName": "Kissandfly", "agentId": "kfus", "isAirline": false, "agentRating": 3.49, "agentReviewCount": 711,"agentPrice": 410.0, "agentUrl": "https://www.skyscanner.com/transport_deeplink/4.0/US/en-US/USD/kfus/1/..." }],"scrapedAt": "2026-09-27T11:13:42Z"}
A round trip has two legs, and the return... fields are filled in. Each layover gives the airport, its length in minutes and whether you change airports. In the Output tab, switch between three tables: Overview (one line per flight), Legs (one line per leg) and Booking options (one line per seller).
price is the total for all travellers. pricePerPerson is that total divided by the number of travellers. Times are local to each airport, as on your ticket.
How can I use Skyscanner flight data?
- Fare tracking: schedule a daily run on your routes and chart how prices move before departure.
- Travel deals and alerts: find the cheapest dates and sellers and send them to your audience.
- Route and airline research: see which airlines fly a route, how often, with how many stops and at what price.
- Online travel agencies and price comparison: compare what each seller charges for the same flight.
- Corporate travel: check fares for many city pairs at once before booking trips.
- Data science: build datasets of fares, durations and layovers across markets and currencies.
Track flight prices over time
Save your input as a task, then use Schedule to run it every day. With dates like 30 days and 37 days the search always looks the same distance ahead. To follow one departure date instead, enter it as a fixed date. Each run adds a dated dataset you can compare, or send to Google Sheets, Slack or your own system with Apify integrations.
Use it from your own code
Start a run and read the flights with the Apify API or client libraries:
from apify_client import ApifyClientclient = ApifyClient("<YOUR_API_TOKEN>")run = client.actor("automly/skyscanner-flight-scraper").call(run_input={"origin": "JFK", "destination": "LHR", "departDate": "30 days"})for flight in client.dataset(run["defaultDatasetId"]).iterate_items():print(flight["price"], flight["airlines"], flight["outboundDeparture"], flight["bookingUrl"])
Scrape more travel data
| Actor | What it gets |
|---|---|
| Booking.com Hotel Scraper | Hotel prices, guest ratings, room types and taxes for a destination and dates |
| Airbnb Listings Scraper | Airbnb listings, prices, ratings and hosts |
| Tripadvisor Reviews Scraper | Hotel, restaurant and attraction reviews with ratings and owner replies |
| Google Maps Scraper | Places with addresses, phones, websites, ratings and opening hours |
❓FAQ
How much does it cost to scrape Skyscanner?
$1.00 per 1,000 flights, with platform usage included. See the cost section above and the Pricing tab.
How many flights can I get per route?
As many as Skyscanner finds for that search, often a few hundred and up to about 2,000 on busy round trips between big cities. Set Max flights per route to keep only the top ones in your chosen order.
Can I search a whole city or only one airport?
Both. LHR searches Heathrow only; LON or London searches every London airport.
Why is the price different from what I see on Skyscanner?
Fares change by the minute and differ by country site and currency. Set Market and Currency to the ones you use on Skyscanner. Skyscanner also rounds prices up on screen ($404 for 403.32).
Does it include baggage allowance and fare brands?
Not yet. The data covers flights, times, stops, sellers, prices and the change, cancellation and refund policy that Skyscanner shows in its results.
Can I search multi-city trips or flexible dates?
Each route is one-way or a round trip. For flexible dates, add one route per date under More routes; they all run in the same run.
Do I need a Skyscanner account?
No. The scraper reads only public search results, the same ones anyone sees without logging in.
Can I connect Skyscanner Scraper to other tools or AI agents?
Yes. Start runs and download results with the Apify API or the Python and JavaScript clients, send results to Make, Zapier, n8n, Google Sheets or Slack with Apify integrations and webhooks, or let AI assistants and agents run it through the Apify MCP server at mcp.apify.com.
Is it legal to scrape Skyscanner?
This scraper collects public flight data only: routes, times, prices and sellers. It does not collect personal data. If your use ever involves personal data, it may be protected by laws such as GDPR, so only scrape for a legitimate reason and ask a lawyer if you are unsure. You can read more in Is web scraping legal?
Skyscanner Scraper is an independent tool. It is not affiliated with, endorsed by or sponsored by Skyscanner.
Something isn't working?
Open the Issues tab with your input and what you expected.
⭐ Your feedback
Have an idea or found a problem? Tell us in the Issues tab. If Skyscanner Scraper saved you time, a short review on the Reviews tab helps other people find it.