KAYAK Flight Scraper avatar

KAYAK Flight Scraper

Pricing

from $12.00 / 1,000 result items

Go to Apify Store
KAYAK Flight Scraper

KAYAK Flight Scraper

Scrapes real-time flight prices, airlines, and schedules from KAYAK flight route pages. Returns each flight as a flat row with price, departure and arrival times, and trip duration.

Pricing

from $12.00 / 1,000 result items

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

0

Bookmarked

8

Total users

3

Monthly active users

12 days ago

Last modified

Share

ParseForge

KAYAK Flight Scraper

Scrape real-time flight prices, routes, and availability from KAYAK, up to a million results per run. Every result comes with price, airline, departure and arrival times, and trip duration. No API key required. Export to CSV, JSON, Excel, or XML.

KAYAK's flight search aggregates fares from hundreds of airlines and travel sites, but manually copying prices for a route is slow and error-prone. This Actor reads the public flight route pages directly, collecting every listed flight with its price, airline, and schedule into a structured dataset. It works for any route KAYAK covers, from a single city pair to a full competitive analysis.

Who uses itWhat they scrape KAYAK for
Travel agenciesBuild a live feed of current fares for the routes they sell.
Market researchersTrack how airline pricing changes week to week on a competitive corridor.
Price comparison platformsPopulate a database with real-time KAYAK prices to power their own comparison tool.
Data analystsCollect a clean dataset of flight schedules and fares for a pricing model.

What it does

This Actor collects flight listings from KAYAK flight route pages and returns each one as a flat row with price, airline, departure and arrival times, and trip duration.

  • 🔗 Direct URL input: paste any KAYAK flight route URL to scrape that exact page.
  • 🛫 Route builder: provide an origin and destination slug and the Actor constructs the URL for you.
  • ⚙️ Concurrency control: set the maximum number of parallel requests to stay under rate limits.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with KAYAK data

📊 Monitor airfare trends.

A market researcher runs the Actor weekly on a set of business-travel routes and feeds the price history into a dashboard that flags when a competitor drops fares.

🛒 Power a flight price comparison site.

A developer schedules daily scrapes of popular vacation routes and loads the results into their own search UI, keeping their site fresh without manual updates.

📈 Build a pricing model.

A data analyst collects a month of daily prices for a single route and trains a model that predicts the best day to buy.

🗺️ Populate a travel agency feed.

An agency scrapes the routes they book most often every morning and imports the CSV into their internal quoting tool so agents always quote live fares.

Why choose this scraper

What you get
Real-time pricesThe fare KAYAK shows right now, not a cached estimate.
Airline and flight numberThe operating carrier and flight identifier for each listing.
Departure and arrival timesScheduled gate times so you can compare convenience as well as cost.
Trip durationTotal travel time including any layovers, in a sortable field.

How it compares

This Actor focuses on scraping flight route pages with a simple route builder, while the alternative KAYAK flight scraper emphasizes real-time extraction and the reviews scraper targets hotel reviews instead of flights.

FeatureParseForgeKayak Flights ScraperKayak Reviews Scraper
Scrapes flight pricesYesYesNot listed
Route builder from origin/destination slugsYesNot listedNot listed
Scrapes hotel reviewsNot listedNot listedYes
Configurable request concurrencyYesNot listedNot listed
Exports to CSV, JSON, Excel, XMLYesYesYes

Configure the run

Drive the Actor from a direct KAYAK flight route URL or by building one from an origin and destination slug, and set a maximum number of results to cap the run. The Input tab lists every parameter.

A first run with the defaults:

{
"startUrl": "https://www.kayak.com/flight-routes/New-York-John-F-Kennedy-Intl-JFK/Los-Angeles-LAX",
"maxItems": 10
}

A larger pull:

{
"startUrl": "https://www.kayak.com/flight-routes/New-York-John-F-Kennedy-Intl-JFK/Los-Angeles-LAX",
"maxItems": 200
}

Pricing

Pay-per-result: $0.016 per result collected. You pay only for the results written to your dataset.

Results collectedApproximate cost
100 results$1.60
1,000 results$16.00
10,000 results$160.00

New Apify accounts start with $5 in free credit.

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the KAYAK Flight Scraper.
  3. Set your inputs and any filters, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live access to KAYAK through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

$claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/kayak-scraper"

Then prompt it in plain language to run the scraper and read back the results.

Troubleshooting

Why am I getting no results?

Check that the start URL or the origin and destination slugs are correct. Open the URL in a browser first to confirm KAYAK shows flights for that route. Also check that you have not set maxItems too low.

The Actor returns fewer results than I see on the website.

KAYAK may load additional results dynamically as you scroll. The Actor scrapes the initial page load. Try lowering the max concurrency to give the page more time to render, or check if KAYAK is rate-limiting your requests.

I am getting rate-limited or seeing captchas.

Reduce the max concurrency to 1 or 2. If the problem persists, switch to Apify's residential proxies in the Actor's proxy settings to appear as a regular home user.

The prices in the dataset do not match what I see on KAYAK.

KAYAK prices can change in seconds. The Actor captures the price at the moment of scraping. Run it again to get the latest fares, and note that cached pages or different user locations can also affect the displayed price.

FAQ

QuestionAnswer
Can I scrape multiple routes in one run?One run scrapes one flight route page. To scrape many routes, run the Actor multiple times with different start URLs or origin/destination pairs, or use an Apify workflow to loop over a list of routes.
Does this Actor need a KAYAK account or API key?No. It reads the public flight route pages that anyone can visit in a browser, so no login or API key is required.
What format does the data come in?The dataset can be exported to CSV, JSON, Excel, or XML from the Apify run tab. The default view is a flat table with one flight per row.
How do I find the correct origin or destination slug?Search for a flight route on KAYAK and copy the part of the URL that names the airport, such as 'New-York-John-F-Kennedy-Intl-JFK'. You can also paste the full route URL into the start URL field instead.
Does it return one-way and round-trip prices?The Actor scrapes the flight route page, which typically shows the lowest available one-way fares for the route. Round-trip pricing is not shown on this page type.
Can I filter by airline or number of stops?The Actor collects every flight listed on the route page. To filter by airline or stops, apply a filter to the exported dataset in your own spreadsheet or script.
What is the maximum number of results I can get?You can set the maximum up to 1,000,000 results per run. The actual number depends on how many flights KAYAK displays for that route.
How do I avoid getting blocked?Lower the max concurrency setting to reduce the request rate. Using Apify's residential proxies can also help if you are running large, frequent scrapes.
Does it include baggage fees or seat selection costs?No. The flight route page shows the base fare. Ancillary fees like baggage or seat selection are not included in the scraped data.
Can I scrape international routes?Yes. Any route that has a page on KAYAK can be scraped, including domestic and international city pairs.

Browse the full ParseForge collection for more scrapers.

🆘 Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

⚠️ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by Booking Holdings Inc. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.