Skip to content

NORTHWEST NATURAL HOLDING COMPANY: filings

Every NORTHWEST NATURAL HOLDING COMPANY annual and quarterly report in the SEC record with the published financial measures it tagged, 31 filings, each linked to its SEC index.

Filings with published measures

Each page shows what one filing reported, as tagged in that filing, with the periods it covered. Later filings can restate a value; the company overview shows the latest-filed value per period.

FormFiledFiscal periodMeasuresFactsSEC accession
10-Q2026-08-05fiscal Q2 2026421280001733998-26-000127
10-Q2026-05-06fiscal Q1 2026421040001733998-26-000087
10-K2026-02-27fiscal FY 2025441140001733998-26-000012
10-Q2025-11-05fiscal Q3 2025431310001733998-25-000176
10-Q2025-08-05fiscal Q2 2025431330001733998-25-000132
10-Q2025-05-06fiscal Q1 2025431090001733998-25-000094
10-K2025-02-28fiscal FY 2024451170001733998-25-000020
10-Q2024-11-12fiscal Q3 2024431330001733998-24-000125
10-Q2024-08-02fiscal Q2 2024431330001733998-24-000093
10-Q2024-05-06fiscal Q1 2024431090001733998-24-000075
10-K2024-02-23fiscal FY 2023451170001733998-24-000011
10-Q2023-11-03fiscal Q3 2023421330001733998-23-000067
10-Q2023-08-03fiscal Q2 2023421330001733998-23-000042
10-Q2023-05-04fiscal Q1 2023421070001733998-23-000016
10-K2023-02-24fiscal FY 2022461200001733998-23-000009
10-Q2022-11-08fiscal Q3 2022421360001733998-22-000048
10-Q2022-08-04fiscal Q2 2022421360001733998-22-000031
10-Q2022-05-04fiscal Q1 2022431100001733998-22-000014
10-K2022-02-25fiscal FY 2021461190001733998-22-000005
10-Q2021-11-05fiscal Q3 2021431400001733998-21-000034
10-Q2021-08-05fiscal Q2 2021431400001733998-21-000023
10-Q2021-05-05fiscal Q1 2021421080001733998-21-000010
10-K2021-02-26fiscal FY 2020451170001733998-21-000006
10-Q2020-11-05fiscal Q3 2020421370001733998-20-000059
10-Q2020-08-07fiscal Q2 2020421370001733998-20-000045
10-Q2020-05-08fiscal Q1 2020411050001733998-20-000025
10-K2020-03-02fiscal FY 2019451640001733998-20-000006
10-Q2019-11-05fiscal Q3 2019411300001733998-19-000044
10-Q2019-08-06fiscal Q2 2019401280001733998-19-000030
10-Q2019-05-07fiscal Q1 201939950001733998-19-000011
10-K2019-03-01fiscal FY 2018401550001733998-19-000004

Inspect the source

Entity
NORTHWEST NATURAL HOLDING COMPANY / CIK 0001733998
Captured
2026-09-19T11:20:49.487Z
SEC response SHA-256
25b8a661587ea1631214e2b32b1e7c385ad0a341023be0c3aab4abb2d0b90abb

Current SEC company facts · Download the original response snapshot (gzip) · Download the selected JSON

Every published concept a filing tagged, with the periods it covered, as reported in that filing at capture time. Forms 10-K, 10-K/A, 10-Q, 10-Q/A, 20-F, 20-F/A, 40-F, 40-F/A. A filing page needs at least 8 published concepts. Later filings can restate these values; the company history pages show the latest-filed value per period.

Public company accounting reference, not market prices, returns, an investment recommendation, or ALPHAC performance. Validate a separately constructed return series with the validation API; accounting values are not returns.

Use this in research

A financial period ends before its results become public. Use the filing date as a minimum availability boundary, inspect amendments, and retain the original filing vintage when testing historical signals. This latest-filed selection can contain information unavailable at the time.

These pages do not supply prices, total-return histories, corporate-action adjustments or a tradable universe. Build those inputs separately before evaluating a strategy. A profitable backtest can still reflect selection bias or costs that were left out.

Research methodology · Execution and cost assumptions · Check backtest overfitting

Build with the open-source tools

Use these accounting records as inspectable inputs. When you have constructed a return series, the validation tools can help test its statistical evidence and preserve the result with its limitations.

Read the published dataset with Python
import json
from urllib.request import urlopen

with urlopen("https://canlicapital.com/company-data/0001733998.json") as response:
    record = json.load(response)
print(record["fetched_at"])
print(record["policy"])
for concept in record["concepts"]:
    print(concept["tag"], next(iter(concept["observations"])))