Flight

JAL2087

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

In flightRJOO → ROAH to NAHA
Phaseapproach
Progress98%
ETA17:00 JST

Route

AirlineJapan Airlines
Typical originRJOO OSAKA INTERNATIONAL
Typical destinationROAH NAHA
Distance654 nm

Flight history 266 flights since Aug 2025

DateFromToDepArrDurationAircraft
2026-10-03RJOOROAH15:02 JST16:54 JST1h 51mJA14XJ
2026-10-02RJOOROAH14:59 JST16:47 JST1h 47mJA14XJ
2026-10-01RJOOROAH14:33 JST17:02 JST2h 28m847628
2026-09-30RJOOROAH14:53 JST16:39 JST1h 45mJA08XJ
2026-09-29RJOOROAH15:09 JST16:54 JST1h 44mJA03XJ
2026-09-28RJOOROAH14:59 JST16:52 JST1h 52m847628
2026-09-27RJOOROAH15:27 JST17:24 JST1h 56mJA16XJ
2026-09-26RJOOROAH14:58 JST16:46 JST1h 47mJA11XJ
2026-09-25RJOOROAH15:25 JST17:14 JST1h 49mJA14XJ
2026-09-24RJOOROAH15:01 JST16:50 JST1h 49mJA16XJ
2026-09-23RJOOROAH15:01 JST16:46 JST1h 44m847628
2026-09-22RJOOROAH14:56 JST16:48 JST1h 51mJA16XJ
2026-09-21RJOOROAH14:06 JST16:53 JST2h 46m8479BC
2026-09-20estimatedRJOOROAH15:19 JST15:50 JST0h 30mJA03XJ
2026-09-19estimatedRJOOROAH14:59 JST15:38 JST0h 38mJA14XJ
2026-09-18RJOOROAH15:12 JST16:50 JST1h 37m847628
2026-09-17RJOOROAH15:23 JST16:58 JST1h 35m847628
2026-09-16estimatedRJOOROAH15:20 JST16:00 JST0h 39m847628
2026-09-15RJOOROAH15:19 JST17:06 JST1h 46mJA03XJ
2026-09-14estimatedRJOOROAH15:18 JST16:50 JST1h 31mJA15XJ
2026-09-13estimatedRJOOROAH15:22 JST16:52 JST1h 29mJA14XJ
2026-09-12estimatedRJOOROAH15:04 JST16:54 JST1h 49mJA14XJ
2026-09-11RJOOROAH15:07 JST16:48 JST1h 40mJA03XJ
2026-09-10estimatedRJOOROAH15:11 JST16:50 JST1h 38mJA15XJ
2026-09-09RJOOROAH15:32 JST17:02 JST1h 29mJA16XJ
2026-09-07estimated??06:49Z08:30Z1h 40mJA16XJ
2026-09-06estimatedRJBB?15:36 JST08:08Z1h 31mJA01XJ
2026-09-05estimatedRJOOROAH15:08 JST16:44 JST1h 36mJA15XJ
2026-09-04RJOOROAH15:26 JST17:06 JST1h 39mJA01XJ
Earlier flights (237) - back to 2025-08-15
DateFromToDepArrDurationAircraft
2026-09-03RJOOROAH15:22 JST16:56 JST1h 33mJA01XJ
2026-09-01estimatedRJOOROAH15:17 JST16:48 JST1h 30mJA12XJ
2026-08-31estimatedRJOOROAH15:08 JST16:44 JST1h 35mJA01XJ
2026-08-30RJOOROAH15:02 JST16:34 JST1h 31mJA16XJ
2026-08-29RJOOROAH15:11 JST16:42 JST1h 30mJA16XJ
2026-08-28RJOOROAH15:15 JST16:44 JST1h 28mJA11XJ
2026-08-27RJOOROAH15:31 JST16:48 JST1h 16mJA16XJ
2026-08-24estimatedRJOOROAH15:10 JST16:42 JST1h 32mJA03XJ
2026-08-23RJOOROAH15:29 JST17:04 JST1h 34mJA14XJ
2026-08-22estimatedRJOOROAH15:20 JST17:14 JST1h 54mJA14XJ
2026-08-21estimatedRJOOROAH15:11 JST18:55 JST3h 43mJA11XJ
2026-08-20RJOOROAH15:21 JST16:54 JST1h 32mJA16XJ
2026-08-19estimated??06:37Z09:52Z3h 14mJA11XJ
2026-08-18RJOOROAH15:22 JST18:46 JST3h 23mJA11XJ
2026-08-16estimatedRJOOROAH15:51 JST18:54 JST3h 02mJA16XJ
2026-08-15estimatedRJOOROAH15:23 JST18:22 JST2h 59m847628
2026-08-14estimatedRJOOROAH15:19 JST19:02 JST3h 42m847628
2026-08-13estimatedRJOOROAH15:15 JST16:40 JST1h 25mJA01XJ
2026-08-12RJOOROAH15:16 JST16:48 JST1h 31mJA01XJ
2026-07-23RJOOROAH15:47 JST17:28 JST1h 40mJA11XJ
2026-07-22estimatedRJOOROAH15:15 JST16:48 JST1h 32mJA16XJ
2026-07-21RJOOROAH15:28 JST17:00 JST1h 31mJA11XJ
2026-07-20RJOOROAH15:08 JST16:40 JST1h 31m8479BC
2026-07-19RJOOROAH15:00 JST16:34 JST1h 34m847628
2026-07-18estimated?ROAH06:05Z16:50 JST1h 45mJA16XJ
2026-07-17RJOOROAH15:28 JST16:58 JST1h 30m8479BC
2026-07-16RJOOROAH15:33 JST17:06 JST1h 32mJA03XJ
2026-07-15RJOOROAH15:46 JST17:18 JST1h 31m847628
2026-07-14RJOOROAH15:10 JST16:40 JST1h 29m847628
2026-07-13RJOOROAH15:22 JST16:54 JST1h 31m847628
2026-07-12RJOOROAH15:23 JST16:52 JST1h 28mJA11XJ
2026-07-11RJOOROAH17:42 JST19:22 JST1h 39mJA01XJ
2026-07-09estimatedRJOOROAH15:08 JST16:40 JST1h 32mJA15XJ
2026-07-08estimatedRJOOROAH15:18 JST16:48 JST1h 29m847628
2026-07-07estimatedRJOOROAH15:18 JST16:46 JST1h 27mJA11XJ
2026-07-06RJOOROAH15:36 JST17:12 JST1h 36mJA01XJ
2026-07-05estimatedRJOOROAH15:18 JST17:14 JST1h 55mJA01XJ
2026-07-04estimatedRJOOROAH15:22 JST17:12 JST1h 49mJA01XJ
2026-07-03RJCOROAH15:02 JST17:00 JST1h 58mJA13HC
2026-07-02RJOOROAH15:28 JST17:08 JST1h 39mJA16XJ
2026-07-01estimatedRJOOROAH15:15 JST15:36 JST0h 20mJA01XJ
2026-06-30estimatedRJOOROAH15:16 JST15:38 JST0h 21mJA14XJ
2026-06-29estimatedRJOOROAH16:01 JST16:22 JST0h 20mJA01XJ
2026-06-28estimatedRJOO?15:17 JST06:54Z0h 36mJA15XJ
2026-06-27estimatedRJOOROAH15:38 JST16:00 JST0h 22m847628
2026-06-26estimatedRJOO?16:11 JST07:50Z0h 38m8479BC
2026-06-25estimatedRJOOROAH15:08 JST15:34 JST0h 25m8479BC
2026-06-24estimatedRJOO?15:05 JST11:12Z5h 06m847628
2026-06-23estimatedRJOOROAH15:10 JST15:28 JST0h 18mJA15XJ
2026-06-22estimatedRJOOROAH15:10 JST15:35 JST0h 24mJA03XJ
2026-06-21estimatedRJOO?14:57 JST06:36Z0h 39mJA03XJ
2026-06-20estimatedRJOOROAH15:10 JST15:34 JST0h 23mJA16XJ
2026-06-19estimatedRJOOROAH15:30 JST15:48 JST0h 17mJA01XJ
2026-06-18estimatedRJOOROAH15:33 JST15:54 JST0h 20mJA01XJ
2026-06-17estimatedRJOOROAH15:52 JST16:16 JST0h 23mJA01XJ
2026-06-16estimatedRJOOROAH15:21 JST15:44 JST0h 22mJA01XJ
2026-06-15estimatedRJOOROAH15:21 JST15:44 JST0h 22m8479BC
2026-06-14estimatedRJOO?16:04 JST07:42Z0h 37mJA15XJ
2026-06-13estimatedRJOOROAH15:11 JST15:34 JST0h 22mJA14XJ
2026-06-12estimatedRJOO?15:20 JST07:04Z0h 43mJA03XJ
2026-05-29estimatedRJOOROAH15:14 JST15:38 JST0h 23m8479BC
2026-05-28estimatedRJOOROAH14:57 JST15:30 JST0h 32m847628
2026-05-27estimatedRJOOROAH15:33 JST15:52 JST0h 18m847628
2026-05-26estimatedRJOOROAH15:23 JST15:44 JST0h 20mJA12XJ
2026-05-25estimatedRJOOROAH15:26 JST15:50 JST0h 23mJA16XJ
2026-05-24estimatedRJOOROAH15:25 JST15:48 JST0h 22mJA16XJ
2026-05-23estimatedRJOOROAH15:26 JST15:50 JST0h 23mJA14XJ
2026-05-22estimatedRJOOROAH15:30 JST15:58 JST0h 27mJA16XJ
2026-05-21estimatedRJOO?15:11 JST06:46Z0h 35mJA03XJ
2026-05-20RJOORODE09:01 JST18:56 JST9h 54mJA16XJ
2026-05-19RJOOROAH11:17 JST04:41 JST17h 24mJA14XJ
2026-05-12RJOOROAH15:08 JST16:52 JST1h 43mJA15XJ
2026-05-11RJOOROAH15:13 JST17:06 JST1h 52mJA15XJ
2026-05-10RJOOROAH15:11 JST16:54 JST1h 42mJA15XJ
2026-05-09RJOOROAH15:15 JST16:56 JST1h 40m8479BC
2026-05-08RJOOROAH15:03 JST16:46 JST1h 42mJA15XJ
2026-05-07RJOOROAH15:21 JST16:56 JST1h 34mJA01XJ
2026-05-06estimatedRJOOROAH15:34 JST17:16 JST1h 41mJA01XJ
2026-05-05estimatedRJOOROAH15:08 JST16:54 JST1h 46mJA11XJ
2026-05-04estimatedRJOOROAH15:20 JST17:10 JST1h 50m8479BC
2026-05-03RJOOROAH15:13 JST16:58 JST1h 44mJA01XJ
2026-05-02RJOOROAH15:29 JST17:12 JST1h 43mJA01XJ
2026-05-01estimatedRJOOROAH15:26 JST17:02 JST1h 36mJA01XJ
2026-04-30estimatedRJOO?15:12 JST07:58Z1h 45mJA01XJ
2026-04-28RJOOROAH15:02 JST16:44 JST1h 41mJA15XJ
2026-04-27RJOOROAH15:10 JST16:52 JST1h 41mJA16XJ
2026-04-26estimatedRJOO?15:39 JST08:28Z1h 48mJA14XJ
2026-04-25RJOOROAH15:15 JST17:12 JST1h 56m8479BC
2026-04-24estimatedRJOOROAH15:44 JST17:32 JST1h 47mJA03XJ
2026-04-23RJOOROAH15:19 JST17:04 JST1h 44mJA03XJ
2026-04-22?ROAH06:12Z16:54 JST1h 41mJA03XJ
2026-04-21estimatedRJOO?17:13 JST09:52Z1h 38m8479BC
2026-04-20estimated??06:42Z08:20Z1h 37mJA11XJ
2026-04-19estimated?ROAH06:06Z16:50 JST1h 43mJA03XJ
2026-04-18estimated?ROAH06:15Z16:48 JST1h 33mJA16XJ
2026-04-17RJOOROAH15:56 JST17:36 JST1h 39mJA01XJ
2026-04-16estimatedRJOOROAH18:29 JST20:14 JST1h 44mJA12XJ
2026-04-15estimatedRJOO?15:47 JST08:26Z1h 38mJA16XJ
2026-04-14RJOOROAH15:23 JST17:06 JST1h 42mJA01XJ
2026-04-13RJOOROAH16:08 JST17:48 JST1h 39m847628
2026-04-12RJOOROAH15:11 JST16:52 JST1h 41mJA15XJ
2026-04-11RJOOROAH16:28 JST18:06 JST1h 37mJA16XJ
2026-04-06RJOOROAH15:13 JST16:58 JST1h 44mJA01XJ
2026-04-05estimatedRJOOROAH15:32 JST17:18 JST1h 45mJA01XJ
2026-04-04estimated?ROAH06:19Z17:08 JST1h 48mJA01XJ
2026-04-03RJOOROAH16:22 JST18:02 JST1h 39m8479BC
2026-04-02RJOOROAH15:36 JST17:14 JST1h 37mJA01XJ
2026-04-01estimatedRJOO?15:28 JST08:16Z1h 47mJA11XJ
2026-03-31?ROAH06:40Z17:26 JST1h 45mJA14XJ
2026-03-30RJOOROAH15:14 JST17:00 JST1h 46mJA03XJ
2026-03-29RJOOROAH15:04 JST16:46 JST1h 42m8479BC
2026-03-16RJOOROAH15:46 JST17:18 JST1h 31mJA14XJ
2026-03-15estimatedRJOOROAH15:10 JST16:50 JST1h 40mJA12XJ
2026-03-14RJOOROAH15:22 JST16:50 JST1h 28mJA14XJ
2026-03-13RJOOROAH15:21 JST16:48 JST1h 26mJA06XJ
2026-03-12RJOOROAH15:05 JST17:14 JST2h 08mJA01XJ
2026-03-11RJOOROAH15:06 JST17:14 JST2h 07mJA15XJ
2026-03-10RJOOROAH15:10 JST17:20 JST2h 09mJA15XJ
2026-03-09RJOOROAH14:58 JST16:58 JST2h 00m847628
2026-03-08estimatedRJOOROAH15:03 JST17:06 JST2h 02mJA14XJ
2026-03-07RJOOROAH15:11 JST17:14 JST2h 02mJA11XJ
2026-03-06RJOOROAH14:58 JST17:12 JST2h 13mJA16XJ
2026-03-05RJOOROAH15:11 JST17:10 JST1h 58mJA11XJ
2026-03-04RJOOROAH15:06 JST17:10 JST2h 03mJA15XJ
2026-03-03RJOOROAH15:03 JST17:06 JST2h 03m847628
2026-03-02RJOOROAH15:06 JST17:02 JST1h 55mJA01XJ
2026-03-01RJOOROAH14:54 JST16:48 JST1h 54mJA15XJ
2026-02-28RJOOROAH15:23 JST17:16 JST1h 52mJA01XJ
2026-02-27RJOOROAH15:03 JST17:06 JST2h 02mJA16XJ
2026-02-26RJOOROAH15:11 JST17:08 JST1h 56mJA01XJ
2026-02-25RJOOROAH14:57 JST16:56 JST1h 59mJA16XJ
2026-02-24RJOOROAH15:04 JST17:02 JST1h 57mJA15XJ
2026-02-23RJOOROAH15:04 JST17:02 JST1h 57mJA11XJ
2026-02-22RJOOROAH14:51 JST16:50 JST1h 58mJA14XJ
2026-02-21RJOOROAH14:57 JST16:58 JST2h 00mJA03XJ
2026-02-20RJOOROAH15:17 JST17:20 JST2h 03m847628
2026-02-19RJOOROAH15:24 JST17:32 JST2h 07mJA03XJ
2026-02-18RJOOROAH15:10 JST17:16 JST2h 06mJA15XJ
2026-02-17RJOOROAH15:22 JST17:24 JST2h 01mJA14XJ
2026-02-16RJOOROAH15:02 JST17:10 JST2h 07mJA11XJ
2026-02-15RJOOROAH15:15 JST17:18 JST2h 02mJA01XJ
2026-02-14RJOOROAH15:00 JST17:06 JST2h 06mJA03XJ
2026-02-13RJOOROAH14:56 JST17:00 JST2h 03mJA01XJ
2026-02-12RJOOROAH15:09 JST17:12 JST2h 02mJA16XJ
2026-02-11RJOOROAH14:58 JST17:02 JST2h 03mJA11XJ
2026-02-09RJOORJKN15:15 JST16:33 JST1h 18m846B6C
2026-02-07RJOOROAH15:16 JST17:32 JST2h 15mJA14XJ
2026-02-06RJOOROAH15:15 JST17:26 JST2h 10m847628
2026-02-05RJOOROAH15:17 JST17:14 JST1h 56mJA11XJ
2026-02-04RJOOROAH14:59 JST17:04 JST2h 04mJA15XJ
2026-02-03RJOOROAH14:56 JST17:00 JST2h 03mJA03XJ
2026-02-02RJOOROAH15:05 JST17:20 JST2h 14mJA14XJ
2026-02-01RJOOROAH15:07 JST17:14 JST2h 06mJA15XJ
2026-01-31RJOOROAH14:56 JST17:04 JST2h 07mJA16XJ
2026-01-30RJOOROAH15:04 JST17:12 JST2h 07m847628
2026-01-29RJOOROAH14:44 JST16:46 JST2h 01mJA11XJ
2026-01-28RJOOROAH14:49 JST17:00 JST2h 10m847628
2026-01-27estimatedRJOOROAH14:32 JST17:10 JST2h 37mJA03XJ
2026-01-26RJOOROAH15:00 JST17:04 JST2h 04mJA01XJ
2026-01-25RJOOROAH15:00 JST17:00 JST2h 00mJA03XJ
2026-01-24RJOOROAH14:58 JST17:04 JST2h 05mJA01XJ
2026-01-23RJOOROAH14:51 JST16:58 JST2h 07mJA16XJ
2026-01-22RJOOROAH14:59 JST17:14 JST2h 14mJA11XJ
2026-01-21RJOOROAH15:14 JST17:28 JST2h 14mJA14XJ
2026-01-20RJOOROAH15:08 JST17:18 JST2h 09mJA15XJ
2026-01-19RJOOROAH14:51 JST16:56 JST2h 04mJA03XJ
2026-01-09RJOOROAH14:51 JST16:58 JST2h 06mJA14XJ
2026-01-08RJOOROAH15:02 JST17:10 JST2h 07mJA11XJ
2026-01-07RJOOROAH14:56 JST17:02 JST2h 05mJA14XJ
2026-01-06RJOOROAH15:23 JST17:26 JST2h 02mJA11XJ
2026-01-05RJOOROAH15:15 JST17:30 JST2h 15mJA02XJ
2026-01-04RJOOROAH17:55 JST20:02 JST2h 06mJA10XJ
2026-01-03RJOOROAH15:05 JST17:14 JST2h 08mJA06XJ
2026-01-02RJOOROAH15:07 JST17:24 JST2h 16mJA11XJ
2026-01-01RJOOROAH15:36 JST17:50 JST2h 13m847628
2025-12-31RJOOROAH14:56 JST17:04 JST2h 07mJA10XJ
2025-12-30RJOOROAH14:59 JST17:08 JST2h 08mJA02XJ
2025-12-29RJOOROAH15:43 JST17:46 JST2h 02mJA11XJ
2025-12-28RJOOROAH14:56 JST17:02 JST2h 05mJA01XJ
2025-12-27RJOOROAH15:14 JST17:22 JST2h 08mJA11XJ
2025-12-26RJOOROAH14:59 JST17:10 JST2h 10mJA01XJ
2025-12-25RJOOROAH15:08 JST17:29 JST2h 21mJA01XJ
2025-12-24RJOOROAH15:09 JST17:06 JST1h 56mJA14XJ
2025-12-23RJOOROAH14:54 JST16:58 JST2h 03mJA11XJ
2025-12-22RJOOROAH14:50 JST16:52 JST2h 02mJA01XJ
2025-12-21RJOOROAH15:04 JST17:12 JST2h 07mJA15XJ
2025-12-20RJOOROAH15:07 JST17:18 JST2h 11mJA03XJ
2025-12-19RJOOROAH14:52 JST17:02 JST2h 09mJA16XJ
2025-12-18RJOOROAH15:01 JST17:00 JST1h 58mJA15XJ
2025-12-17RJOOROAH15:10 JST17:12 JST2h 01mJA01XJ
2025-12-16RJOOROAH14:51 JST16:52 JST2h 01mJA11XJ
2025-12-15RJOOROAH15:21 JST17:16 JST1h 55mJA03XJ
2025-12-14RJOOROAH15:14 JST17:28 JST2h 13mJA03XJ
2025-12-13RJOOROAH15:07 JST17:17 JST2h 09mJA11XJ
2025-12-12RJOOROAH15:16 JST17:12 JST1h 55mJA01XJ
2025-12-11RJOOROAH14:59 JST17:06 JST2h 06mJA01XJ
2025-12-10RJOOROAH14:55 JST17:02 JST2h 06mJA16XJ
2025-12-02estimatedRJOOROAH16:28 JST16:54 JST0h 25mJA11XJ
2025-11-27estimated??08:12Z08:38Z0h 26m847628
2025-11-26estimated??07:55Z08:16Z0h 20mJA03XJ
2025-10-30estimatedRJOOROAH16:20 JST17:22 JST1h 01mJA15XJ
2025-10-29estimated??07:05Z08:10Z1h 04mJA11XJ
2025-10-28estimated??07:47Z08:04Z0h 16mJA16XJ
2025-10-27estimatedRJOOROAH16:24 JST16:54 JST0h 30mJA01XJ
2025-10-26estimated??06:47Z07:54Z1h 06mJA14XJ
2025-10-25estimatedRJOOROAH15:49 JST16:48 JST0h 58mJA15XJ
2025-10-24estimated??07:37Z07:54Z0h 16mJA14XJ
2025-10-23estimatedRJOOROAH16:25 JST16:46 JST0h 20mJA03XJ
2025-10-22estimatedRJOOROAH16:32 JST16:56 JST0h 24mJA01XJ
2025-10-20estimatedRJOOROAH16:34 JST17:10 JST0h 35mJA16XJ
2025-10-15RJOOROAH15:09 JST16:52 JST1h 42mJA03XJ
2025-10-14RJOOROAH15:10 JST16:59 JST1h 49mJA12XJ
2025-10-13RJOOROAH15:02 JST16:52 JST1h 49mJA15XJ
2025-10-08RJOOROAH15:19 JST17:08 JST1h 48mJA15XJ
2025-10-07RJOOROAH15:01 JST16:36 JST1h 34mJA16XJ
2025-10-06RJOOROAH15:15 JST16:51 JST1h 35mJA01XJ
2025-10-02RJOORJKB15:03 JST16:22 JST1h 18m840E10
2025-10-01RJOORORY15:25 JST16:46 JST1h 21m846F00
2025-09-30RJOORJKA15:11 JST16:19 JST1h 07m847294
2025-09-29RJOORJKB15:13 JST16:29 JST1h 16m846F00
2025-09-28RJOORORY15:08 JST16:28 JST1h 20m840E10
2025-09-27RJOORORY15:06 JST16:25 JST1h 18m847628
2025-09-26RJOORORY18:51 JST20:10 JST1h 19m847628
2025-09-25RJOORORY15:21 JST16:42 JST1h 21m846F00
2025-09-24RJOORORY15:06 JST16:26 JST1h 20m840E10
2025-09-23RJOORJKB15:11 JST16:29 JST1h 17m8406E8
2025-09-22RJOORORY15:06 JST16:23 JST1h 17m847628
2025-09-21RJOORODE15:07 JST16:30 JST1h 22m8406E8
2025-09-20RJOORORY15:08 JST16:27 JST1h 18m840E10
2025-09-19RJOORODE15:06 JST16:28 JST1h 21m8406E8
2025-08-26RJOOROAH11:49 JST16:46 JST4h 56mJA15XJ
2025-08-22RJOOROAH01:14 JST06:30 JST5h 15m847628
2025-08-21RJOOROAH16:43 JST17:02 JST0h 18mJA15XJ
2025-08-20RJOOROAH17:53 JST20:22 JST2h 29mJA01XJ
2025-08-19RJOOROAH15:34 JST17:14 JST1h 39mJA03XJ
2025-08-16RJOOROAH15:13 JST16:44 JST1h 30mJA11XJ
2025-08-15RJOOROAH15:12 JST16:50 JST1h 37mJA16XJ

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.

Track live on the map Full history CSV API access

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]