Downloading Data

download_data() fetches a quarterly FCA Call Report archive from Ketchbrook Analytics’ public AWS S3 mirror and extracts it locally.

Basic usage

import fcall

fcall.download_data(
    year=2025,
    month="September",
    dest="fcadata/sep2025/",
)

Month argument

month accepts either the full month name or its integer equivalent:

# Both of these download September 2025
fcall.download_data(
    year=2025,
    month="September",
    dest="sep_by_name/",
)
fcall.download_data(
    year=2025,
    month=9,
    dest="sep_by_int/",
)

Valid quarters are 3 (March), 6 (June), 9 (September), 12 (December).

Selective extraction

Use the files argument to extract only the specific file(s) you want to download.

fcall.download_data(
    year=2025,
    month=9,
    dest="inst_only/",
    files=["D_INST.TXT", "INST_Q202509_G20251112.TXT"],
)

Suppressing output

Pass quiet=True to suppress the progress messages:

fcall.download_data(
    year=2025,
    month=9,
    dest="data/",
    quiet=True,
)

URL convention

FCA’s archive URL format changed in 2015:

Period URL format Example
2015 - present {year}{MonthName}.zip 2020March.zip
Before 2015 {AbbrevMonth}{year}.zip Sept2011.zip

download_data() handles this automatically.

Data availability

Check https://www.fca.gov/bank-oversight/call-report-data-for-download to confirm a quarter’s data has been published before attempting a download. Typically each quarter’s data appears 5-6 weeks after the period ends.

Warning2024 data is broken

FCA’s 2024 files contain a known defect. See ketchbrookanalytics/fcall-py#1 for details and workarounds while FCA addresses the issue.