Skip to content

PPG INDUSTRIES INC: filings

Every PPG INDUSTRIES INC annual and quarterly report in the SEC record with the published financial measures it tagged, 69 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 202646970000079879-26-000170
10-K2026-02-19fiscal FY 2025541410000079879-26-000046
10-Q2025-10-29fiscal Q3 2025461370000079879-25-000311
10-Q2025-07-30fiscal Q2 2025461330000079879-25-000223
10-Q2025-04-30fiscal Q1 202546980000079879-25-000133
10-K2025-02-20fiscal FY 2024531400000079879-25-000034
10-Q2024-10-17fiscal Q3 2024461350000079879-24-000217
10-Q2024-07-19fiscal Q2 2024461310000079879-24-000167
10-Q2024-04-19fiscal Q1 202446950000079879-24-000107
10-K2024-02-15fiscal FY 2023541440000079879-24-000040
10-Q2023-10-19fiscal Q3 2023461360000079879-23-000065
10-Q2023-07-21fiscal Q1 2023461320000079879-23-000045
10-Q2023-04-21fiscal Q1 202346960000079879-23-000026
10-K2023-02-16fiscal FY 2022541440000079879-23-000007
10-Q2022-10-20fiscal Q3 2022461340000079879-22-000078
10-Q2022-07-22fiscal Q2 2022461300000079879-22-000049
10-Q2022-04-22fiscal Q1 202246940000079879-22-000025
10-K2022-02-17fiscal FY 2021531410000079879-22-000009
10-Q2021-10-21fiscal Q3 2021441340000079879-21-000078
10-Q2021-07-20fiscal Q2 2021441300000079879-21-000044
10-Q2021-04-16fiscal Q1 202144940000079879-21-000023
10-K2021-02-18fiscal FY 2020531720000079879-21-000008
10-Q2020-10-20fiscal Q3 2020451360000079879-20-000056
10-Q2020-07-17fiscal Q2 2020451320000079879-20-000044
10-Q2020-04-28fiscal Q1 202047990000079879-20-000028
10-K2020-02-20fiscal FY 2019521690000079879-20-000008
10-Q2019-10-18fiscal Q3 2019471380000079879-19-000043
10-Q2019-07-19fiscal Q2 2019471340000079879-19-000032
10-Q2019-04-19fiscal Q1 201947970000079879-19-000017
10-K2019-02-21fiscal FY 2018491640000079879-19-000008
10-Q2018-10-19fiscal Q3 2018441260000079879-18-000058
10-Q2018-07-20fiscal Q2 2018431240000079879-18-000045
10-Q2018-06-28fiscal Q1 201843990000079879-18-000040
10-K/A2018-06-28fiscal FY 2017473240000079879-18-000039
10-K2018-02-15fiscal FY 2017461480000079879-18-000010
10-Q2017-10-20fiscal Q3 2017431240000079879-17-000088
10-Q2017-07-21fiscal Q2 2017431240000079879-17-000078
10-Q2017-04-24fiscal Q1 201743920000079879-17-000035
10-K2017-02-16fiscal FY 2016461480000079879-17-000009
10-Q2016-10-21fiscal Q3 2016431240000079879-16-000118
10-Q2016-07-22fiscal Q2 2016431240000079879-16-000095
10-Q2016-04-21fiscal Q1 201643920000079879-16-000071
10-K2016-02-18fiscal FY 2015461490000079879-16-000065
10-Q2015-10-26fiscal Q3 2015431240000079879-15-000051
10-Q2015-07-27fiscal Q2 2015431240000079879-15-000043
10-Q2015-04-27fiscal Q1 201543950000079879-15-000026
10-K2015-02-19fiscal FY 2014461490000079879-15-000009
10-Q2014-10-24fiscal Q3 2014431220000079879-14-000064
10-Q2014-07-23fiscal Q2 2014431230000079879-14-000054
10-Q2014-04-24fiscal Q1 201443900000079879-14-000032
10-K2014-02-20fiscal FY 2013471520000079879-14-000010
10-Q2013-10-28fiscal Q3 2013401140000079879-13-000058
10-Q2013-07-29fiscal Q2 2013391120000079879-13-000047
10-Q2013-04-29fiscal Q1 201339820000079879-13-000033
10-K2013-02-21fiscal FY 2012471520000079879-13-000016
10-Q2012-10-29fiscal Q3 2012381080000079879-12-000018
10-Q2012-07-30fiscal Q2 2012381080001193125-12-322176
10-Q2012-04-30fiscal Q1 201238790001193125-12-194978
10-K2012-02-16fiscal FY 2011461490001193125-12-064763
10-Q2011-10-31fiscal Q3 2011381080001193125-11-288218
10-Q2011-08-01fiscal Q2 2011381080001193125-11-204498
10-Q2011-05-02fiscal Q1 201137770001193125-11-120981
10-K2011-02-17fiscal FY 2010441420001193125-11-038642
10-Q2010-11-01fiscal Q3 2010381050001193125-10-242348
10-Q2010-07-26fiscal Q2 2010381050001193125-10-165782
10-Q2010-04-26fiscal Q1 201028580001193125-10-093068
10-K2010-02-18fiscal FY 200933850001193125-10-033939
10-Q2009-10-26fiscal Q3 200930780001193125-09-213623
10-Q2009-07-27fiscal Q2 200928720001193125-09-155628

Inspect the source

Entity
PPG INDUSTRIES INC / CIK 0000079879
Captured
2026-09-19T14:51:22.035Z
SEC response SHA-256
d2115215c7b5332e873631ef48ba58e08b126192b275c4f6043c31c439948a74

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