Flight

AAL2070

Flight history and live tracking for AAL2070, operated by American Airlines. Recent flights from the PlaneTrack independent receiver network, with departure and arrival times, aircraft used, and a real-time position feed.

Next flight

DateSat 03 Oct 2026
RouteKLAX LOS ANGELES INTERNATIONAL → KCLT CHARLOTTE DOUGLAS INTERNATIONAL
Scheduled departure11:14 PDT

Scheduled and estimated times from the FAA SWIM feed, local to each airport.

Route

AirlineAmerican Airlines
Observed routeKSAT → KDFW

Flight history 279 flights since Aug 2025

DateFromToDepArrDurationAircraft
2026-10-02KLAX LOS ANGELES INTERNATIONALKCLT CHARLOTTE DOUGLAS INTERNATIONAL11:26 PDT18:37 EDT4h 11mN587UW
2026-10-01KLAX LOS ANGELES INTERNATIONALKCLT CHARLOTTE DOUGLAS INTERNATIONAL11:36 PDT18:44 EDT4h 08mN411AN
2026-09-30KLAX LOS ANGELES INTERNATIONALKCLT CHARLOTTE DOUGLAS INTERNATIONAL11:27 PDT18:37 EDT4h 10mN447AN
2026-09-29KLAX LOS ANGELES INTERNATIONALKCLT CHARLOTTE DOUGLAS INTERNATIONAL11:30 PDT18:38 EDT4h 08mN401AN
2026-09-28KLAX LOS ANGELES INTERNATIONALKCLT CHARLOTTE DOUGLAS INTERNATIONAL12:01 PDT19:04 EDT4h 03mN416AN
2026-09-27KLAX LOS ANGELES INTERNATIONALKCLT CHARLOTTE DOUGLAS INTERNATIONAL11:32 PDT18:42 EDT4h 10mN422AN
2026-09-26KLAX LOS ANGELES INTERNATIONALKCLT CHARLOTTE DOUGLAS INTERNATIONAL11:28 PDT18:36 EDT4h 08mN425AN
2026-09-25KLAX LOS ANGELES INTERNATIONALKCLT CHARLOTTE DOUGLAS INTERNATIONAL11:33 PDT18:49 EDT4h 16mN404AN
2026-09-24partialKCLT?20:52 EDTN462AA
2026-09-23partialKCLT?14:22 EDTN462AA
2026-09-22KLAXKCLT10:39 PDT18:34 EDT4h 54mN443AA
2026-09-21KLAXKCLT11:25 PDT19:06 EDT4h 40mN400AN
2026-09-20partialKCLT?14:55 EDTN404AN
2026-09-19KLAXKCLT11:26 PDT18:36 EDT4h 09mN435AN
2026-09-18partialKCLT?14:14 EDTN404AN
2026-09-17partialKCLT?14:23 EDTN442AN
2026-09-16partialKCLT?14:15 EDTN468AN
2026-09-15partialKCLT?14:26 EDTN420AN
2026-09-14partialKCLT?14:25 EDTN444UW
2026-09-13partialKCLT?13:20 EDTN412UW
2026-09-12partialKCLT?14:21 EDTN457AM
2026-09-11partialKCLT?14:24 EDTN454AL
2026-09-10partialKCLT?13:41 EDTA5CC4C
2026-09-08KLAXKCLT11:09 PDT18:28 EDT4h 18mN551UW
2026-09-06partialKCLT?07:21 EDTN409AA
2026-09-05partialKCLT?14:19 EDTN409AA
2026-09-04partialKCLT?21:20 EDTN443AA
2026-09-03partialKCLT?14:32 EDTN443AA
Earlier flights (251) - back to 2025-08-14
DateFromToDepArrDurationAircraft
2026-09-01partialKCLT?13:58 EDTN524UW
2026-08-30partialKCLT?14:02 EDTN402AN
2026-08-29partialKCLT?21:38 EDTN448AN
2026-08-28partialKCLT?20:33 EDTN467AL
2026-08-27partialKCLT?14:43 EDTN467AL
2026-08-25partialKCLT?13:08 EDTN192UW
2026-08-23partialKCLT?09:19 EDTN444UW
2026-08-22?KUZA19:21Z19:58 EDT4h 37mN444UW
2026-08-22estimated??18:17Z18:40Z0h 22mN444UW
2026-08-21partialKCLT?20:47 EDTN441UW
2026-08-20partialKCLT?13:32 EDTN441UW
2026-08-18partialKCLT?14:28 EDTN185UW
2026-08-16partialKCLT?13:33 EDTN459AN
2026-08-15partialKCLT?21:06 EDTN436AN
2026-08-14estimated?KCLT17:16Z18:30 EDT5h 14mN436AN
2026-08-13estimated?KCLT17:54Z18:32 EDT4h 37mN431AN
2026-08-11?KTYS18:55Z19:22 EDT4h 26mN956XV
2026-07-23estimatedKCLTKHHR07:34 EDT09:06 PDT4h 31mN430AN
2026-07-22KCLTKHHR08:42 EDT10:10 PDT4h 27mN462AA
2026-07-21estimatedKCLTKHHR07:19 EDT09:36 PDT5h 16mN434AN
2026-07-20estimatedKCLTKHHR07:25 EDT08:44 PDT4h 18mN455AN
2026-07-19estimatedKCLTKHHR08:03 EDT11:00 PDT5h 56mN425AN
2026-07-18estimatedKCLTKHHR07:48 EDT09:32 PDT4h 43mA5C4DE
2026-07-17estimatedKCLTKHHR08:01 EDT09:28 PDT4h 26mN442AN
2026-07-16estimatedKCLTKHHR07:34 EDT09:14 PDT4h 39mN453AA
2026-07-15estimatedKCLTKHHR07:35 EDT09:08 PDT4h 32mN454AL
2026-07-14estimatedKCLTKHHR07:52 EDT09:36 PDT4h 44mN408AN
2026-07-13estimatedKCLTKHHR07:36 EDT08:44 PDT4h 07mA5C4DE
2026-07-12estimatedKCLTKHHR08:04 EDT09:14 PDT4h 09mA5CC4C
2026-07-11estimatedKCLTKHHR10:03 EDT12:32 PDT5h 28mN424AN
2026-07-10estimatedKCLTKHHR07:32 EDT08:58 PDT4h 26mN416AN
2026-07-09estimatedKCLTKHHR07:32 EDT10:40 PDT6h 07mN434AN
2026-07-08estimatedKCLTKHHR09:15 EDT10:52 PDT4h 36mN457AM
2026-07-07estimatedKCLTKHHR08:22 EDT10:04 PDT4h 41mN926UW
2026-07-06estimatedKCLTKHHR07:40 EDT08:46 PDT4h 05mN412UW
2026-07-05KCLTKHHR07:41 EDT09:12 PDT4h 30mN423AN
2026-07-04estimatedKCLTKHHR07:32 EDT09:12 PDT4h 39mN432AN
2026-07-03KCLTKLAX07:37 EDT09:12 PDT4h 34mN934AA
2026-07-02KCLTKLAX07:35 EDT08:52 PDT4h 16mN439AN
2026-07-01estimatedKCLTKHHR07:35 EDT09:19 PDT4h 43mN181UW
2026-06-30estimated??20:33Z20:52Z0h 18mN459AN
2026-06-30estimated??17:17Z19:13Z1h 55mN459AN
2026-06-30estimatedKCLTKHHR07:38 EDT07:22 PDT2h 44mN459AN
2026-06-29estimatedKCLTKHHR07:47 EDT09:56 PDT5h 08mN404AN
2026-06-28estimatedKCLTKHHR07:25 EDT09:00 PDT4h 34mN465AN
2026-06-27estimatedKCLTKHHR07:24 EDT09:10 PDT4h 45mN463AA
2026-06-26estimatedKCLTKHHR07:37 EDT09:18 PDT4h 40mN413AN
2026-06-25estimatedKCLTKHHR07:29 EDT09:06 PDT4h 36mN468AN
2026-06-24estimatedKCLTKHHR07:23 EDT09:04 PDT4h 40mN454AL
2026-06-23estimatedKCLTKHHR07:27 EDT09:18 PDT4h 50mN465AN
2026-06-22estimatedKCLTKHHR07:23 EDT09:38 PDT5h 15mN180US
2026-06-21estimatedKCLTKHHR07:39 EDT09:20 PDT4h 40mN445AA
2026-06-20estimatedKCLTKHHR07:45 EDT10:08 PDT5h 22mN163AA
2026-06-19estimatedKCLTKHHR07:33 EDT09:28 PDT4h 54mN452AN
2026-06-18estimated??15:21Z16:32Z1h 10mA5C895
2026-06-17estimatedKCLTKHHR07:26 EDT09:08 PDT4h 41mN423AN
2026-06-16estimated??14:35Z16:08Z1h 32mN150NN
2026-06-16estimatedKCLTKHHR07:17 EDT05:22 PDT1h 04mN150NN
2026-06-15estimatedKCLTKHHR07:53 EDT09:44 PDT4h 50mN439AN
2026-06-14estimated??16:27Z17:06Z0h 38mAD45A4
2026-06-14KCLTKLAX07:21 EDT09:06 PDT4h 44mAD45A4
2026-06-13estimatedKCLTKHHR07:33 EDT08:06 PDT3h 32mN429AN
2026-06-12estimatedKCLTKHHR07:21 EDT09:18 PDT4h 56mN428AA
2026-05-29KCLTKHHR07:23 EDT08:56 PDT4h 32mN429AN
2026-05-28estimatedKCLT?07:29 EDT15:34Z4h 04mN540UW
2026-05-27estimatedKCLTKHHR07:23 EDT10:10 PDT5h 46mN409AA
2026-05-26estimatedKLAX?08:46 PDT16:28Z0h 41mN466AN
2026-05-26estimatedKCLTKHHR07:19 EDT08:00 PDT3h 40mN466AN
2026-05-25estimatedKCLTKHHR07:31 EDT09:28 PDT4h 56mN405AN
2026-05-24estimatedKCLTKHHR07:17 EDT08:50 PDT4h 32mN430AN
2026-05-23estimatedKCLTKHHR07:35 EDT09:34 PDT4h 58mN428AA
2026-05-22estimated?KHHR11:35Z09:42 PDT5h 06mN426AN
2026-05-21KCLTKLAX09:33 EDT11:10 PDT4h 36mN991AN
2026-05-20KPHX?00:05 MST20:32Z13h 26mN751UW
2026-05-20KPHXKSDL20:59 MST22:01 MST1h 02mN751UW
2026-05-20KPHXKSDL18:15 MST19:07 MST0h 52mN837AW
2026-05-19partialKPHX?20:56 MSTN742PS
2026-05-12KPHX?10:53 MST20:12Z2h 18mN765US
2026-05-11partialKPHX?13:13 MSTAAF83C
2026-05-10partialKPHX?10:55 MSTN711UW
2026-05-10estimated??16:43Z17:12Z0h 28mN711UW
2026-05-10partialKPHX?17:00 MSTN715UW
2026-05-09KPHX?11:14 MST23:58Z5h 43mN715UW
2026-05-08partialKPHX?10:57 MSTN804AW
2026-05-07partialKPHX?11:26 MSTN748UW
2026-05-06estimatedKPHX?10:45 MST22:22Z4h 37mN774XF
2026-05-05estimated??17:44Z20:20Z2h 35mN774XF
2026-05-04partialKPHX?10:52 MSTN753US
2026-05-03?KPHX17:56Z16:59 MST6h 02mN801AW
2026-05-02partialKPHX?10:53 MSTN775XF
2026-05-01KPHXKFFZ10:56 MST16:58 MST6h 01mN775XF
2026-05-01estimatedKPHX?17:03 MST01:04Z1h 00mN801AW
2026-04-30partialKPHX?10:39 MSTN801AW
2026-04-29KPHX?10:51 MST20:26Z2h 34mN754UW
2026-04-28estimated??17:37Z20:34Z2h 56mN713UW
2026-04-28partialKPHX?17:00 MSTN754UW
2026-04-27KPHX?11:22 MST23:58Z5h 35mN754UW
2026-04-27partialKPHX?17:00 MSTN764US
2026-04-26KPHX?12:33 MST23:58Z4h 24mN764US
2026-04-25estimatedKPHX?10:43 MST23:58Z6h 14mN803AW
2026-04-24?KPHX17:43Z16:54 MST6h 10mN709UW
2026-04-24estimatedKPHX?17:00 MST00:58Z0h 58mN758US
2026-04-23partialKPHX?10:53 MSTN758US
2026-04-22estimated??17:14Z20:40Z3h 26mN772XF
2026-04-21estimated??17:50Z20:20Z2h 29mN745VJ
2026-04-20partialKPHX?11:00 MSTN826AW
2026-04-19estimated??21:40Z23:58Z2h 17mN745VJ
2026-04-19estimated??17:51Z20:50Z2h 58mN745VJ
2026-04-18partialKPHX?10:50 MSTN177XF
2026-04-17?KPHX17:54Z16:58 MST6h 03mN741UW
2026-04-17partialKPHX?17:00 MSTN756US
2026-04-16?KEUG20:38Z16:58 PDT3h 19mN756US
2026-04-15KPHX?11:02 MST20:52Z2h 49mN835AW
2026-04-14KPHX?10:52 MST20:28Z2h 35mN757UW
2026-04-13?KPHX20:20Z16:56 MST3h 35mN838AW
2026-04-13estimated?KEUG19:31Z13:00 PDT0h 28mN838AW
2026-04-12partialKPHX?17:01 MSTN704US
2026-04-11KPHX?10:56 MST23:50Z5h 53mN704US
2026-04-10estimated??23:38Z23:59Z0h 20mN758US
2026-03-30estimatedKMIA?10:37 EDT21:10Z6h 32mN339SU
2026-03-29estimatedKMIA?10:38 EDT21:30Z6h 51mA33B1E
2026-03-11estimatedKMIA?10:23 EDT16:30Z2h 06mN341SV
2026-03-10estimatedKMIA?10:37 EDT16:46Z2h 08mA3FCD6
2026-03-09estimatedKMIA?10:24 EDT16:30Z2h 05mN318SF
2026-03-08estimatedKMIA?10:40 EDT16:46Z2h 05mA3A647
2026-03-07?KIAH17:18Z13:32 CST2h 13mN931AM
2026-03-06KSATKDFW07:59 CST09:16 CST1h 17mN543UW
2026-03-04?KDFW13:11Z09:12 CST2h 01mN167AN
2026-03-03estimatedKSAT?08:01 CST15:27Z1h 25mN183UW
2026-03-02?KDFW13:17Z09:08 CST1h 50mN979UY
2026-03-01KSATKDFW08:00 CST09:12 CST1h 11mN177US
2026-02-28estimated??13:12Z15:24Z2h 11mN902AA
2026-02-27estimatedKSAT?08:02 CST15:26Z1h 23mN150UW
2026-02-26?KDFW13:08Z11:03 CST3h 54mN912UY
2026-02-25estimated??14:13Z15:44Z1h 31mN981UY
2026-02-24KSATKDFW08:10 CST09:22 CST1h 11mN199UW
2026-02-23estimated??13:55Z16:10Z2h 14mN155NN
2026-02-22KSATKDFW07:57 CST09:08 CST1h 10mN180US
2026-02-22estimated??13:08Z13:34Z0h 25mN180US
2026-02-21KSAT?07:59 CST16:18Z2h 18mN133AN
2026-02-20KSATKDFW07:58 CST09:42 CST1h 44mN145AN
2026-02-19estimated??13:22Z15:34Z2h 11mN446AN
2026-02-18estimated??13:08Z15:22Z2h 13mN121AN
2026-02-17estimated??13:28Z15:40Z2h 11mN988AL
2026-02-16estimated??13:38Z15:54Z2h 16mN179UW
2026-02-15estimated?KDFW13:43Z09:08 CST1h 24mN174US
2026-02-14estimated??13:08Z15:08Z2h 00mN552UW
2026-02-13estimated??13:16Z16:00Z2h 43mN578UW
2026-02-12KSATKDFW07:58 CST09:38 CST1h 39mN523UW
2026-02-11estimated?KDFW13:46Z09:18 CST1h 31mN882NN
2026-02-10KSATKDFW08:18 CST09:40 CST1h 21mN906NN
2026-02-09KSATKDFW08:23 CST09:30 CST1h 06mN902AA
2026-02-08KSATKDFW08:21 CST09:20 CST0h 59mN846NN
2026-02-07KSATKDFW08:14 CST09:34 CST1h 19mN897NN
2026-02-06KSATKDFW08:16 CST09:22 CST1h 05mN855NN
2026-02-05KSATKDFW08:14 CST09:26 CST1h 11mN903AA
2026-02-04KSATKDFW08:19 CST09:40 CST1h 20mN838NN
2026-02-03KSATKDFW08:21 CST09:34 CST1h 12mN937NN
2026-02-02KSATKDFW08:23 CST09:22 CST0h 58mN542UW
2026-02-01KSATKDFW08:18 CST09:30 CST1h 11mN974AN
2026-01-31KSATKDFW08:23 CST09:31 CST1h 07mN870NN
2026-01-30KSATKDFW08:12 CST09:30 CST1h 18mA3489F
2026-01-29KSATKDFW08:20 CST09:52 CST1h 32mN930AU
2026-01-28KSATKDFW12:01 CST12:58 CST0h 56mN929NN
2026-01-26KSATKDFW12:50 CST13:56 CST1h 06mN163AA
2026-01-24estimated?KDFW15:58Z11:10 CST1h 11mN915AN
2026-01-23KSATKDFW08:29 CST09:38 CST1h 09mN343PN
2026-01-22KSATKDFW08:24 CST09:24 CST0h 59mN162UW
2026-01-21KSATKDFW08:39 CST09:30 CST0h 50mN994NN
2026-01-20estimated?KDFW13:50Z09:10 CST1h 20mN910AN
2026-01-19?KDFW13:38Z09:38 CST1h 59mN163US
2026-01-09KSATKDFW08:16 CST09:14 CST0h 57mN965NN
2026-01-08KSATKDFW08:23 CST09:36 CST1h 12mN986AN
2026-01-07KSATKDFW08:19 CST09:28 CST1h 08mN957AN
2026-01-06KSATKDFW08:16 CST09:28 CST1h 11mN901AA
2026-01-05KSATKDFW08:16 CST09:38 CST1h 21mN927UW
2026-01-04estimatedKSAT?08:22 CST15:46Z1h 23mN136AN
2026-01-03KSATKDFW08:27 CST09:16 CST0h 48mN519UW
2026-01-02?KDFW13:36Z09:28 CST1h 52mN926UW
2026-01-01KSATKDFW08:23 CST09:16 CST0h 53mN904AA
2025-12-31KSATKDFW08:27 CST09:40 CST1h 12mN587UW
2025-12-30KSATKDFW08:26 CST09:20 CST0h 54mN521UW
2025-12-29KSATKDFW08:21 CST09:18 CST0h 56mN165NN
2025-12-28KSAT?08:19 CST16:10Z1h 50mN549UW
2025-12-27KSATKDFW08:34 CST09:34 CST0h 59mN155NN
2025-12-26KSATKDFW08:21 CST09:18 CST0h 57mN198UW
2025-12-25KSATKDFW08:20 CST09:38 CST1h 17mN190UW
2025-12-24KSATKDFW08:19 CST09:40 CST1h 20mN582UW
2025-12-23estimatedKSAT?08:17 CST15:56Z1h 38mN661AW
2025-12-22KSATKDFW08:19 CST09:10 CST0h 50mN523UW
2025-12-21KSATKDFW08:26 CST09:34 CST1h 07mN542UW
2025-12-20KSATKDFW08:28 CST09:42 CST1h 13mN198UW
2025-12-19KSATKDFW08:27 CST09:38 CST1h 11mN568UW
2025-12-18KSATKDFW08:27 CST09:20 CST0h 52mN558UW
2025-12-17KSATKDFW09:08 CST10:20 CST1h 11mN185UW
2025-12-16KSATKDFW08:26 CST09:20 CST0h 54mN359PX
2025-12-15KSATKDFW08:28 CST09:28 CST0h 59mN585UW
2025-12-14estimatedKSAT?08:41 CST16:15Z1h 33mN902AA
2025-12-13estimatedKSAT?08:40 CST15:44Z1h 03mN581UW
2025-12-12KSATKDFW08:55 CST09:46 CST0h 51mN159AN
2025-12-11KSATKDFW08:34 CST09:30 CST0h 56mN189UW
2025-12-10KSATKDFW08:41 CST09:46 CST1h 04mN189UW
2025-11-27estimated?KDCA10:53Z07:20 EST1h 27mN801AW
2025-11-26estimated?KDCA10:47Z07:08 EST1h 20mN702UW
2025-10-30?KBOS00:00Z21:40 EDT1h 40mN908NN
2025-10-29partial??00:00ZN543UW
2025-10-28KDFWKBOS11:47 CDT22:38 EDT9h 51mADE543
2025-10-27KDFWKBOS04:37 CDT21:46 EDT16h 08mAD90A3
2025-10-26estimated??22:12Z23:58Z1h 45mN973UY
2025-10-25?KBOS00:00Z21:38 EDT1h 38mN551UW
2025-10-24estimated??22:15Z23:58Z1h 42mN551UW
2025-10-24partial??00:00ZN544UW
2025-10-23partial??00:06ZN878NN
2025-10-22estimatedKDFW?17:46 CDT23:28Z0h 42mN878NN
2025-10-22?KBOS00:00Z21:38 EDT1h 37mN924US
2025-10-21partialKDFW?20:11 CDTN554UW
2025-10-19KDFWKBOS17:47 CDT22:14 EDT3h 26mACD64B
2025-10-15KDFW?19:11 CDT08:40Z8h 28mN978UY
2025-10-14KDFW?20:08 CDT04:00Z2h 51mN583UW
2025-10-13KDFW?19:01 CDT05:06Z5h 05mN183UW
2025-10-12estimated?KDFW23:26Z18:58 CDT0h 32mN183UW
2025-10-08?KBOS00:00Z22:20 EDT2h 19mN829NN
2025-10-07partial??00:00ZN190UW
2025-10-06KDFW?17:16 CDT23:58Z1h 41mN190UW
2025-10-05partialKCLT?11:28 EDTN463AA
2025-10-04KCLTKLGB15:54 EDT16:24 PDT3h 29mN409AA
2025-10-02KCLTKBYH07:24 EDT07:28 CDT1h 04mA4F59C
2025-10-01KCLT?07:16 EDT12:23Z1h 07mA5A10A
2025-09-30KCLTKBYH07:22 EDT07:25 CDT1h 03mA4C2F8
2025-09-29KCLT?07:23 EDT12:24Z1h 00mA58C29
2025-09-28KCLTKBYH07:23 EDT07:28 CDT1h 05mA5449A
2025-09-27KCLT?07:22 EDT12:25Z1h 02mA5031A
2025-09-26KCLTKBYH07:17 EDT07:19 CDT1h 01mA59D5F
2025-09-25KCLT?07:49 EDT12:52Z1h 02mA50E3F
2025-09-24KCLT?09:13 EDT14:15Z1h 02mA5AC3B
2025-09-23KCLTKGWO08:42 EDT08:47 CDT1h 05mA5B760
2025-09-22KCLT?07:25 EDT12:32Z1h 06mA4CA66
2025-09-21KCLT?07:30 EDT12:35Z1h 05mA53207
2025-09-20KCLTKBYH07:23 EDT07:26 CDT1h 03mA5B760
2025-09-19KCLT?07:27 EDT12:30Z1h 02mA58C29
2025-08-26KCLTKLAX23:03 EDT20:24 PDT0h 20mN438AN
2025-08-24KCLTKLAX07:15 EDT09:52 PDT5h 37mN424AN
2025-08-23KCLTKHHR01:06 EDT08:44 PDT10h 37mN411AN
2025-08-21estimated??16:00Z16:44Z0h 43mN434AN
2025-08-21KCLTKLAX02:51 EDT08:36 PDT8h 45mN468AN
2025-08-21estimatedKCLTKLAX20:01 EDT23:20 PDT6h 19mN468AN
2025-08-20estimatedKCLTKHHR13:49 EDT16:59 PDT6h 09mN468AN
2025-08-17estimatedKCLTKHHR07:14 EDT08:46 PDT4h 31mN443AA
2025-08-16KCLTKLAX07:30 EDT09:00 PDT4h 29mN424AN
2025-08-15KCLTKLAX07:09 EDT08:42 PDT4h 33mN413AN
2025-08-14estimatedKCLTKHHR10:28 EDT09:24 PDT1h 56mN137AA

Times are local to each airport. Hover for UTC. Flights marked estimated were completed with route prediction or partial coverage; partial records have a confirmed departure but no reliable arrival fix.

Open the live map Full history CSV API access
Follow this flight

Get an email when AAL2070 flies + if it runs late.

Data access

Live positions and 365-day history for this flight are available through the PlaneTrack API (commercial use from $29/month) and as one-off CSV extracts from our archive (from $9.99, with a free one-day sample). Questions: [email protected]