SYSTEM all green source kiwi.com queue 12,943 routes p99 latency 841ms dataflirt.com · scraper/kiwi-com
RUN · 184 active pipelines · kiwi.com live

Kiwi travel data,
at warehouse scale.

We extract complex flight itineraries, virtual interlining routes, dynamic pricing, and baggage allowances from Kiwi. Delivered as clean JSON, CSV, or Parquet to S3, BigQuery, or Snowflake on your cadence.

Flights extracted
1.2M /day
Price updates
8.4M /24h
Itineraries
340K /run
Active pipelines
184
Uptime
99.98%
Data Dictionary

Every field we extract from kiwi.com

Structured, schema-consistent data across all major object types — delivered clean, typed, and ready to query.

Complete list of extractable fields for Flight Itineraries objects from kiwi.com. All fields typed and schema-versioned.

route_iddeparture_airportarrival_airportdeparture_timearrival_timedurationcarrierflight_numberaircraft_typestopslayover_durationvirtual_interlining
flight_itineraries
● 200 OK
"route_id": "DEL-LHR-1205",
"departure_airport": "DEL",
"arrival_airport": "LHR",
"departure_time": "2026-05-12T08:00:00Z",
"arrival_time": "2026-05-12T18:30:00Z",
"duration": "10h 30m",
"carrier": "Air India",
"virtual_interlining": false
# route_iddeparture_airportarrival_airportdeparture_timearrival_timeduration
1
2
3

Complete list of extractable fields for Pricing & Fares objects from kiwi.com. All fields typed and schema-versioned.

route_idbase_pricecurrencytaxesfeestotal_pricefare_classrefundableticket_typeprice_timestampdiscount_applied
pricing_& fares
● 200 OK
"route_id": "DEL-LHR-1205",
"base_price": 450.0,
"currency": "USD",
"total_price": 520.5,
"fare_class": "Economy",
"refundable": false,
"price_timestamp": "2026-05-10T14:22:00Z"
# route_idbase_pricecurrencytaxesfeestotal_price
1
2
3

Complete list of extractable fields for Baggage Rules objects from kiwi.com. All fields typed and schema-versioned.

route_idcabin_bag_includedcabin_bag_dimensionscabin_bag_weightchecked_bag_includedchecked_bag_weightchecked_bag_pricepersonal_item_included
baggage_rules
● 200 OK
"route_id": "DEL-LHR-1205",
"cabin_bag_included": true,
"cabin_bag_weight": "7kg",
"checked_bag_included": false,
"checked_bag_price": 45.0,
"personal_item_included": true
# route_idcabin_bag_includedcabin_bag_dimensionscabin_bag_weightchecked_bag_includedchecked_bag_weight
1
2
3

Complete list of extractable fields for Nomad & Multi-City objects from kiwi.com. All fields typed and schema-versioned.

nomad_idorigindestinationstotal_durationtotal_pricenights_in_destinationsrouting_sequencecarriers_involvedoverall_layover_time
nomad_& multi-city
● 200 OK
"nomad_id": "NOMAD-8842",
"origin": "JFK",
"total_duration": "14 days",
"total_price": 1250.0,
"routing_sequence": "JFK,CDG,FCO,JFK",
"carriers_involved": "['Delta', 'Air France', 'ITA']"
# nomad_idorigindestinationstotal_durationtotal_pricenights_in_destinations
1
2
3

Complete list of extractable fields for Carrier & Layover Details objects from kiwi.com. All fields typed and schema-versioned.

segment_idroute_idoperating_carriermarketing_carrierlayover_airportlayover_timeterminal_changeself_transfer_requiredvisa_required_flag
carrier_& layover details
● 200 OK
"segment_id": "SEG-001",
"route_id": "DEL-LHR-1205",
"operating_carrier": "Air India",
"layover_airport": "FRA",
"layover_time": "2h 15m",
"self_transfer_required": false,
"terminal_change": true
# segment_idroute_idoperating_carriermarketing_carrierlayover_airportlayover_time
1
2
3

Capabilities

Everything you need from Kiwi, nothing you do not

Our Kiwi scraper traverses complex multi-city routing, virtual interlining matrices, and dynamic fare classes with JavaScript rendering, session management, and anti-bot circumvention built in.

Complete Itinerary Extraction

Departure, arrival, flight numbers, aircraft types, and segment-level durations extracted across millions of O&D pairs.

Dynamic Fare Tracking

Capture base fares, taxes, hidden fees, and total prices across multiple currencies. Timestamped per crawl.

Virtual Interlining Data

Extract Kiwi's proprietary self-transfer routes combining non-cooperating carriers into single itineraries.

Baggage Allowance Mapping

Cabin bag dimensions, checked baggage costs, and personal item rules extracted per fare class and carrier.

Nomad Route Scraping

Extract complex multi-city itineraries generated by Kiwi's Nomad algorithm, including layover logic and sequence pricing.

Layover & Transfer Intelligence

Capture terminal changes, self-transfer requirements, and transit visa warnings for complex connections.

Date Matrix Pricing

Scrape flexible date grids to identify cheapest departure and return combinations across a 30-day window.

Guarantee & Service Tier Data

Extract Kiwi Guarantee inclusion status, premium service fees, and disruption protection costs.

High-Frequency Polling

Run continuous pipelines at 15-minute or hourly cadences to track volatile airline pricing changes.

// engagement pipeline

From route list to warehouse record

Brief in. Clean data out.

Define Scope
d 0

Provide O&D pairs, date ranges, or multi-city nodes. We design the extraction schema together.

Pipeline Build
d 2–4

We configure Scrapy / Playwright crawlers, proxy rotation, session management, and CAPTCHA handling for kiwi.com.

Validation & QA
d 4–6

Schema validation, null-rate checks, price-outlier detection, and sample itineraries before full launch.

Delivery
ongoing

JSON / CSV / Parquet pushed to your S3 bucket, BigQuery dataset, or Snowflake stage on agreed cadence.

Under the hood

How our Kiwi pipeline handles the hard parts

Travel aggregators heavily protect their pricing matrices. Here is how we stay resilient, and why teams choose managed infrastructure over DIY.

pipeline-monitor · kiwi.com · live ● active
// fingerprinting
Identity rotation
TLS fingerprintrandomised
User-agentrotated
IP poolresidential
Challenges blocked0
// pagination
Page coverage
48,291 pages queued running
// observability
Pipeline health
99.9%
uptime
142ms
p99 lat
0.3%
null rate
2
alerts
Anti-bot layer
Residential proxy rotation and TLS fingerprinting

Kiwi utilizes advanced bot protection via Datadome and Cloudflare. Our crawlers use residential ISP proxies with realistic TLS fingerprints, randomised request timing, and full cookie session management.

JavaScript rendering
Full Playwright execution for dynamic grids

Kiwi's search results and date matrices are heavily JavaScript-rendered React applications. We run full Playwright browser sessions to trigger lazy-loads and hydrate dynamic pricing widgets.

State management
Complex session handling for multi-city

Extracting Nomad and multi-city itineraries requires maintaining complex session state across multiple search steps. Our pipeline manages these sequential requests without dropping session tokens.

Schema stability
Resilient selectors with fallback chains

Travel sites change their DOM structure frequently for A/B testing. Our selector strategy uses multiple fallback chains, CSS selectors, XPath, and internal API interception, ensuring pipeline stability.

Monitoring & alerting
24/7 pipeline health with anomaly detection

Every run emits structured logs to our observability stack. We alert on null-rate spikes, price outliers, and coverage drops, responding before you notice.

Applications

Who uses Kiwi data and how

Teams across industries use kiwi.com data to build competitive products and smarter operations.

01
OTA Competitor Pricing

Online travel agencies monitor Kiwi's virtual interlining fares to benchmark their own routing algorithms and pricing.

02
Aviation Analytics

Airlines analyse self-transfer volumes to identify underserved direct routes and optimise network planning.

03
Travel Aggregation

Metasearch engines integrate scraped Kiwi pricing matrices to offer comprehensive flight comparisons to their users.

04
Dynamic Repricing

Travel operators track competitor price drops in real-time to adjust their own margins and maintain market parity.

05
Market Research

Analysts track post-pandemic travel recovery, route popularity, and carrier dominance across specific global corridors.

06
AI Travel Agents

LLM developers use structured itinerary and pricing datasets to train autonomous travel booking agents.

Why DataFlirt

"Kiwi has mapped the world's most complex self-transfer flight network. Accessing that routing intelligence requires a highly resilient extraction pipeline."

Most teams underestimate the investment required: reliable Kiwi scraping requires residential proxies, full JavaScript rendering for React apps, complex session state management, and anomaly monitoring. DataFlirt absorbs that complexity so your engineers can focus on the analysis, not the infrastructure.

Technical Spec

Kiwi scraper technical capabilities

Everything supported by our kiwi.com scraper — rendered SPA elements, auth walls, rate-limit evasion and beyond.

JavaScript rendering
Full Playwright sessions required for dynamic pricing and date matrices
Supported
CAPTCHA / Datadome bypass
Automated CapSolver integration with fallback to manual queue
Supported
Residential proxy rotation
ISP-grade residential IPs from global pools rotated per request
Supported
Virtual Interlining extraction
Capture multi-carrier self-transfer logic and layover details
Supported
Nomad route scraping
Extract complex multi-city sequences and optimised routing
Supported
Internal API interception
Capture raw JSON payloads from Kiwi's backend GraphQL/REST endpoints
Supported
Baggage rule mapping
Extract cabin and checked bag rules per segment and fare class
Supported
Currency normalisation
Extract base and converted currencies simultaneously
Supported
User account profiles
Gated data (saved passenger details, payment methods) requires account credentials
Partial
Post-booking PNR details
Gated data (actual booking confirmation numbers, e-tickets) requires completed transactions
Partial
Infrastructure

Infrastructure powering the Kiwi pipeline

Open-source tooling on proven cloud infra — no vendor lock-in, full observability.

ScrapyPlaywrightPython 3.12RedisPostgreSQLApache AirflowAWS LambdaS3CloudWatch2CaptchaCapSolverResidential ProxiesDockerKubernetesGrafanaPrometheus
Scrapy + Playwright Stack

Scrapy handles crawl orchestration, deduplication, and retry logic. Playwright handles JavaScript rendering, cookie sessions, and interaction flows for Kiwi's React frontend.

Residential Proxy Infrastructure

We maintain pools of residential ISP proxies across global regions. Rotation happens per-request with sticky sessions where required to maintain search context.

Cloud-Native Orchestration

Pipelines run on AWS Lambda (burst) and ECS (sustained). Airflow handles scheduling, dependency management, and SLA alerting. All state stored in managed Postgres.

Output & Delivery

Your data, your destination

Data delivered to where your team already works — no new tooling required.

JSON
Newline-delimited or nested, schema versioned per run
CSV
Flat file with typed columns, Excel compatible
XLS
Legacy Excel format for business analysts
Parquet
Columnar format for BigQuery, Snowflake, Athena
AWS S3
Direct bucket delivery, compatible with any data lake
Webhook
HTTP POST per record for real-time downstream processing
API
REST endpoint to query your extracted datasets on demand
Postgres
Upsert into your existing schema with conflict resolution
S3
Direct bucket delivery — compatible with any data lake
// faq

Common questions.

About kiwi.com scraping, legality, and pipeline operations.

Ask us directly →
Is scraping Kiwi legal?

Scraping publicly available pricing and itinerary information is generally permissible under applicable law. DataFlirt targets only public, non-authenticated route and fare data. We do not extract personal data or circumvent authentication walls. Clients should review Kiwi's ToS and consult legal counsel for specific use cases.

How do you handle Kiwi's bot protection?

We use residential ISP proxies, full Playwright browser sessions with realistic TLS fingerprints, and request timing modelled on human behaviour. We monitor for 403/CAPTCHA rate spikes in real time and trigger pool rotation automatically.

Can you extract Virtual Interlining routes?

Yes. We capture the complete self-transfer logic, including operating carriers, layover durations, terminal changes, and visa requirements for each segment of the itinerary.

How fresh is the pricing data?

Real-time streaming pipelines achieve sub-15-minute latency for price and availability signals on defined O&D pairs. Full matrix refreshes complete within agreed SLA windows.

Do you support scraping the Nomad feature?

Yes. We can extract the complex multi-city itineraries generated by Kiwi's Nomad algorithm, including the optimised routing sequence and total duration.

What is the minimum viable engagement?

Our smallest packages start at a defined list of O&D pairs (typically 500-10,000 routes) with daily delivery. For larger matrices or continuous polling, we price based on volume and frequency.

Can I request a sample dataset before committing?

Absolutely. We provide a sample run of up to 50 O&D pairs as part of the pre-engagement scoping process, so you can validate schema fit and data quality before signing any contract.

$ dataflirt scope --new-project --source=kiwi.com ready

Tell us what
to extract.
We do the rest.

20-minute scoping call. Pilot dataset within the week. Production within two. Whether you need a daily dump of key O&D pairs or a continuous price-monitoring feed across virtual interlining routes, we scope, build, and operate the pipeline. Tell us what you need.

hello@dataflirt.com · Bengaluru · IST · typical reply < 4h
Related Scrapers

More in travel flights hotels buses

Services

Data Extraction for Every Industry

View All Services →