Skip to content

PRINCIPAL FINANCIAL GROUP, INC: filings

Every PRINCIPAL FINANCIAL GROUP, INC annual and quarterly report in the SEC record with the published financial measures it tagged, 68 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-04-29fiscal Q1 202629620001104659-26-051384
10-K2026-02-18fiscal FY 2025401070001104659-26-017031
10-Q2025-10-29fiscal Q3 202529840001104659-25-103708
10-Q2025-07-30fiscal Q2 202529840001410578-25-001534
10-Q2025-04-30fiscal Q1 202529620001410578-25-001036
10-K2025-02-19fiscal FY 2024401070001410578-25-000160
10-Q2024-10-30fiscal Q3 202429840001410578-24-001713
10-Q2024-07-31fiscal Q2 202429840001410578-24-001133
10-Q2024-05-01fiscal Q1 202429620001410578-24-000583
10-K2024-02-20fiscal FY 2023401070001104659-24-025516
10-Q2023-11-01fiscal Q3 202329840001104659-23-113318
10-Q2023-08-02fiscal Q2 202329840001104659-23-086723
10-Q2023-05-03fiscal Q1 202329620001104659-23-055435
10-K2023-02-16fiscal FY 2022401070001104659-23-022860
10-Q2022-11-02fiscal Q3 202229840001104659-22-113860
10-Q2022-08-09fiscal Q2 202229840001104659-22-087770
10-Q2022-05-04fiscal Q1 202229620001104659-22-055741
10-K2022-02-11fiscal FY 2021401070001104659-22-020401
10-Q2021-10-28fiscal Q3 202129840001104659-21-130910
10-Q2021-07-29fiscal Q2 202129840001104659-21-097627
10-Q2021-04-29fiscal Q1 202129620001104659-21-057312
10-K2021-02-12fiscal FY 2020401460001104659-21-022074
10-Q2020-10-29fiscal Q3 202029840001104659-20-119392
10-Q2020-07-29fiscal Q2 202030860001104659-20-087765
10-Q2020-04-29fiscal Q1 202030640001104659-20-053218
10-K2020-02-14fiscal FY 2019411450001104659-20-021174
10-Q2019-10-30fiscal Q3 201934930001104659-19-057616
10-Q2019-07-31fiscal Q2 201933900001410578-19-000603
10-Q2019-05-02fiscal Q1 201932660001104659-19-026296
10-K2019-02-13fiscal FY 2018371400001047469-19-000469
10-Q2018-10-31fiscal Q3 201830840001104659-18-064974
10-Q2018-08-01fiscal Q2 201830840001104659-18-048612
10-Q2018-05-02fiscal Q1 201830640001104659-18-029622
10-K2018-02-09fiscal FY 2017371400001047469-18-000695
10-Q2017-11-01fiscal Q3 201726740001104659-17-065124
10-Q2017-08-02fiscal Q2 201726740001104659-17-048680
10-Q2017-05-03fiscal Q1 201726560001104659-17-029273
10-K2017-02-08fiscal FY 2016321260001047469-17-000589
10-Q2016-11-02fiscal Q3 201627780001104659-16-153975
10-Q2016-08-03fiscal Q2 201627780001104659-16-136436
10-Q2016-05-04fiscal Q1 201627580001104659-16-117468
10-K2016-02-10fiscal FY 2015321260001047469-16-010094
10-Q2015-10-28fiscal Q3 201527780001104659-15-073334
10-Q2015-07-29fiscal Q2 201527780001104659-15-054162
10-Q2015-04-29fiscal Q1 201526560001104659-15-031333
10-K2015-02-11fiscal FY 2014321260001047469-15-000727
10-Q2014-10-29fiscal Q3 201426760001104659-14-074658
10-Q2014-07-30fiscal Q2 201426760001104659-14-054822
10-Q2014-04-30fiscal Q1 201426560001104659-14-032420
10-K2014-02-12fiscal FY 2013311310001047469-14-000817
10-Q2013-10-30fiscal Q3 201326760001104659-13-079067
10-Q2013-07-31fiscal Q2 201326760001104659-13-058204
10-Q2013-05-01fiscal Q1 201326570001104659-13-035720
10-K2013-02-13fiscal FY 2012311230001047469-13-000940
10-Q2012-10-31fiscal Q3 201226760001104659-12-072563
10-Q2012-08-01fiscal Q2 201226760001104659-12-053079
10-Q2012-05-02fiscal Q1 201225540001104659-12-031892
10-K2012-02-15fiscal FY 2011291180001047469-12-001065
10-Q2011-11-02fiscal Q3 201124700001104659-11-059800
10-Q2011-08-03fiscal Q2 201124700001104659-11-042988
10-Q2011-05-04fiscal Q1 201124520001104659-11-025598
10-K2011-02-16fiscal FY 2010291180001047469-11-000974
10-Q2010-11-03fiscal Q3 201024700001104659-10-055606
10-Q2010-08-04fiscal Q2 201024700001104659-10-041816
10-Q2010-05-05fiscal Q1 201022480001104659-10-025536
10-K2010-02-17fiscal FY 200923590001047469-10-000948
10-Q2009-11-04fiscal Q3 200922620001104659-09-062402
10-Q2009-08-05fiscal Q2 200922620001104659-09-047410

Inspect the source

Entity
PRINCIPAL FINANCIAL GROUP, INC / CIK 0001126328
Captured
2026-09-20T07:40:30.672Z
SEC response SHA-256
4e877284132e01a1220db032ec6b1dee886b5e88920b4a04cba058047f0bfae8

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/0001126328.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"])))