THOR
Theater History of Operations Reports

(Created 8 July 2018)
(Revised April 2024)

THOR (Theater History of Operations Reports) was created by the Air Force Research Institute (AFRI) back around July 2013 and was hosted at the following website (http://www.au.af.mil/au/afri/thor/index.asp) (Internet Archive Link)

Back in 2023, I was contacted by someone who told me that the Air Force Research Institute (AFRI) was shut down in 2017; with the THOR website disappearing sometime afterwards; so I went back and revisited this page to clean it up; now that THOR is no longer easily available.

The FAQ for THOR was at (http://www.au.af.mil/au/afri/thor/faq.asp); but I've rehosted it HERE.

The THOR database was used to create this (https://dlozeve.github.io/ww2-bombings/) visual graphical map of WW2 bombardment by the USAAF.

Back when the AFRI THOR database search function was online at (http://www.au.af.mil/au/afri/thor/WW2Report.asp), there were some limitations – it would only return the first 20,000 records for performance reasons, and there seemed to be a problem with generating new database pull requests (it constantly repeated your first request to it).

So I downloaded the raw THOR data from the AFRI page back when it was still working so I could run my own analyses; and then in 2023, after I found out that THOR was now defunct; I used the internet archive to recover their “Grab and Go Data”.

THOR Full CSV Databases

THOR (WW1) (64 kb ZIP)

Unzipped, it's a 434 kb CSV; and is comprised of 743+ allied records from WWI. The US data in the collection is digitized from the Daily Raid Reports of the 1st Daylight Bomb Group of the American Air Service in World War 1. This includes records from the 96th, 20th, 11th, and 166th Aero Squadrons. These daily records span dates from June to November 1918, and are the most detailed records found to date. British records of the Royal Naval Air Service/Royal Flying Corps/Royal Air Force (RNAS/RFC/RAF) cover the period from 30 June 1916 to November 1918 for the No. 55, 97, 99, 10, 104, 110, 115, 215, and 216 Sqdns. Italian Front data covers the period from 1915 to October 1918, and contains data on Italian and American-piloted bombing missions. The Italian data is drawn largely from official bulletins released during the war, which understandably omit many of the operational details of the Italian missions (exact bomb load, exact number of aircraft, etc are often missing). French data from 1914-1918 is still being researched and is not included at this time. (No idea if they ever added it in)

THOR (WW2) (6.1~ MB ZIP)

Unzipped, it's a 83.5 MB CSV; and is drawn from the newly digitized records of the United States Strategic Bombing Survey and the US Army Air Forces Evaluation Board as well as individual unit records, the 178,000+ WWII records includes the following theaters of war:

European Theater (ETO): RAF and USAAF (8 AF, 9 AF, 15 AF, 1 TAC) Combined Bomber Offensive Sep 1939- May 1945 in Europe. Some strikes lack Numbered Air Force affiliation and unit information is not currently available for the records.
Mediterranean Theater (MTO): RAF 1940-1945 (partial records; known gaps Jan-Aug 1942, partial data 1942-1945 - exact aircraft numbers and bomb loads missing from some entries); USAAF (9 AF, 12 AF, 15 AF) June 1942- May 1945. It is believed that the records in THOR constitute of only a fraction of the RAF contributions in the war effort in this theater, and that more records are needed.
Pacific Theater (PTO): USAAF Dec 1941-Aug 1945 (5 AF, 7 AF, 11 AF, 13 AF, 14 AF , 20 AF); RAAF Dec 1941-Dec 1942; RNZAF Oct 1943-Aug 1945. It is believed that the records in THOR constitute of only a fraction of the RAAF and RNZAF contributions in the war effort in this theater, and that more records are needed. 11 AF Kiska and ATTU islands data complete from 1943-1945. Additional data on attacks on these islands in 1942 is being reviewed for completeness. US Navy and Marine Corps aircraft data is only available at monthly summary resolution.
China-Burma-India (CBI): USAAF Dec 1941-Aug 1945 (10 AF, 14 AF, 20 AF); RAF data 1942-1944 has significant gaps in coverage. It is believed that the records in THOR constitute of only a fraction of the RAF contributions in the war effort in this theater, and that more records are needed.

THOR (VIETNAM) (446.6 MB ZIP)

This is the huge one. It unzips to a 2.6~ GB CSV file (!!!). Per the THOR FAQ, this dataset is missing data prior to September 1965, and also the month of November 1967 is missing (due to water damage to its magnetic tape archive). The data here represents 4.3+ million airpower records from three Vietnam-era Joint Chiefs of Staff databases:

Combat Activities File (CACTA) 1965-1970
Southeast Asia Database (SEADAB) 1970-1975
Strategic Air Command Activities Database (SACCOACT) 1965-1975

These three databases have been combined to provide a comprehensive database on bombing from October 1965-April 1975, and contain records from the USAF, USN, USMC, and allies during this time period. There are some gaps in the record, namely Nov 1967 is missing, due to water damaged data files. There are also isolated gaps occurring throughout the record totaling approximately three weeks. To provide and preserve the most complete record possible, non-bombing missions (reconnaissance, cargo, etc) have also been kept in the database, allowing other aspects of airpower to be explored.

THOR “Grab and Go” KML Files

Data that the THOR team set up for use in Google Earth (.kml files).

WWI – Western Front (51 kb)
WWI – Italian Front (23 kb)

WWII – European/Mediterranean Theaters (2.1 MB)
    WWII – European/Mediterranean Theaters USAAF Only (535~ kb)
    WWII – European/Mediterranean Theaters RAF Only (1.1 MB)
WWII – Pacific/CBI Theaters (1.5 MB)

Vietnam – 1965 (692 kb)
Vietnam – Jan - Mar 1966 (3.9 MB)
Vietnam – Apr - Jun 1966 (9.7 MB)
Vietnam – Jul - Sept 1966 (5.7 MB)
Vietnam – Oct - Dec 1966 (5.8 MB)
Vietnam – Jan - Mar 1967 (3.9 MB)
Vietnam – Apr - Jun 1967 (9.7 MB)

Analysis of THOR Data

A while back, I created a few Python Scripts (10 kb ZIP) and used them to extract some data from the huge WWII CSV file, creating this Analyzed File (7~ MB ZIP), which extracts to 136 MB of various CSVs. According to the person who tipped me off about AFRI disappearing; I have errors in my Python scripts, which ends up spreading Target_Industry_Description across multiple columns. So take the Analyzed file with a grain of salt; the CSVs in it are:

THOR_WW2_7_31_2013_12 AF.csv
THOR_WW2_7_31_2013_13 AF.csv
THOR_WW2_7_31_2013_15 AF.csv
THOR_WW2_7_31_2013_5 AF.csv
THOR_WW2_7_31_2013_7 AF.csv
THOR_WW2_7_31_2013_8 AF.csv
THOR_WW2_7_31_2013_9 AF.csv
THOR_WW2_7_31_2013_A24.csv
THOR_WW2_7_31_2013_A36.csv
THOR_WW2_7_31_2013_B17.csv
THOR_WW2_7_31_2013_B24.csv
THOR_WW2_7_31_2013_B25.csv
THOR_WW2_7_31_2013_B26.csv
THOR_WW2_7_31_2013_B29.csv
THOR_WW2_7_31_2013_B32.csv
THOR_WW2_7_31_2013_FORMOSA AND RYUKYU ISLANDS.csv
THOR_WW2_7_31_2013_FRANCE.csv
THOR_WW2_7_31_2013_GERMANY.csv
THOR_WW2_7_31_2013_JAPAN MINING.csv
THOR_WW2_7_31_2013_JAPAN.csv
THOR_WW2_7_31_2013_LATLONG_OKIN.csv
THOR_WW2_7_31_2013_P38.csv
THOR_WW2_7_31_2013_P39.csv
THOR_WW2_7_31_2013_P40.csv
THOR_WW2_7_31_2013_P47.csv
THOR_WW2_7_31_2013_P51.csv
THOR_WW2_7_31_2013_P61.csv
THOR_WW2_7_31_2013_PHILIPPINE ISLANDS.csv
THOR_WW2_7_31_2013_VOLCANO AND BONIN ISLANDS.csv
THOR_WW2_7_31_2013_VWEAPONS.csv