{
  "name": "Clean Air Act \"major source\" emission thresholds by pollutant and area classification",
  "description": "Whether a stationary source (a factory, plant, or facility) needs a federal Clean Air Act permit turns on whether its potential to emit crosses a tons-per-year (tpy) threshold -- and 'major source' is not one number but several, set by different regulations that do not agree. The Title V definition at 40 CFR 70.2 alone carries three overlapping tests: the section 112 hazardous-air-pollutant test (10 tpy of a single HAP, 25 tpy of any combination), the section 302 test (100 tpy of any air pollutant subject to regulation, with greenhouse gases counting only at 100,000 tpy CO2 equivalent), and the part D title I nonattainment test, tiered by pollutant (VOC, NOx, CO, PM-10) and by how severely out of attainment the area is (ozone precursors at 100 tpy in Marginal or Moderate areas, 50 in Serious, 25 in Severe, 10 in Extreme). PSD is a separate definition in a separate part -- 40 CFR 52.21(b)(1)(i) -- and it splits again: 100 tpy for the source categories the rule lists by name, 250 tpy for everything else. That last distinction is the one most often flattened: a facility told 'the threshold is 100 tons a year' is being given the Title V number, which is the wrong answer for any source outside the listed categories. Each record is one test/pollutant/classification combination and the threshold that test sets, quoted from the regulation that sets it. Answers 'what's the major-source threshold for VOC in a Severe ozone nonattainment area', 'does 25 tpy of a HAP make me major', and 'is my PSD threshold 100 or 250 tons a year'.",
  "url": "https://referencesource.org/clean-air-act-major-source-thresholds/",
  "licence": "US federal regulation \u2014 17 USC 105, no copyright",
  "last_verified": "2026-09-07",
  "stale_after": "2027-08-31",
  "sources": [
    "https://www.ecfr.gov/current/title-40/chapter-I/subchapter-C/part-70/subpart-A/section-70.2",
    "https://www.ecfr.gov/current/title-40/chapter-I/subchapter-C/part-52/subpart-A/section-52.21"
  ],
  "records": [
    {
      "row_id": "co-nonattainment-serious",
      "test": "Part D Title I nonattainment major stationary source",
      "pollutant": "carbon monoxide",
      "area_classification": "Serious",
      "threshold_tpy": "50",
      "definition_heading": "Major source means any stationary source",
      "id": "co-nonattainment-serious",
      "url": "https://referencesource.org/clean-air-act-major-source-thresholds/co-nonattainment-serious/",
      "source": "https://www.ecfr.gov/current/title-40/chapter-I/subchapter-C/part-70/subpart-A/section-70.2",
      "source_quote": "For carbon monoxide nonattainment areas: (A) That are classified or treated as classified as \u201cSerious,\u201d and (B) in which stationary sources contribute significantly to carbon monoxide levels as determined under rules issued by the Administrator, sources with the potential to emit 50 tpy or more of carbon monoxide; and",
      "verified_fields": [
        "area_classification",
        "definition_heading",
        "pollutant",
        "threshold_tpy"
      ],
      "derived_fields": [
        "row_id",
        "test"
      ]
    },
    {
      "row_id": "ozone-nonattainment-voc-nox-extreme",
      "test": "Part D Title I nonattainment major stationary source",
      "pollutant": "volatile organic compounds or oxides of nitrogen",
      "area_classification": "Extreme",
      "threshold_tpy": "10",
      "definition_heading": "Major source means any stationary source",
      "id": "ozone-nonattainment-voc-nox-extreme",
      "url": "https://referencesource.org/clean-air-act-major-source-thresholds/ozone-nonattainment-voc-nox-extreme/",
      "source": "https://www.ecfr.gov/current/title-40/chapter-I/subchapter-C/part-70/subpart-A/section-70.2",
      "source_quote": "For ozone nonattainment areas, sources with the potential to emit 100 tpy or more of volatile organic compounds or oxides of nitrogen in areas classified or treated as classified as \u201cMarginal\u201d or \u201cModerate,\u201d 50 tpy or more in areas classified or treated as classified as \u201cSerious,\u201d 25 tpy or more in areas classified or treated as classified as \u201cSevere,\u201d and 10 tpy or more in areas classified or treated as classified as \u201cExtreme\u201d; except that the references in this paragraph to 100, 50, 25 and 10 tpy of nitrogen oxides shall not apply with respect to any source for which the Administrator has made a finding, under section 182(f)(1) or (2) of the Act, that requirements under section 182(f) of the Act do not apply;",
      "verified_fields": [
        "area_classification",
        "definition_heading",
        "pollutant",
        "threshold_tpy"
      ],
      "derived_fields": [
        "row_id",
        "test"
      ]
    },
    {
      "row_id": "ozone-nonattainment-voc-nox-marginal",
      "test": "Part D Title I nonattainment major stationary source",
      "pollutant": "volatile organic compounds or oxides of nitrogen",
      "area_classification": "Marginal",
      "threshold_tpy": "100",
      "definition_heading": "Major source means any stationary source",
      "id": "ozone-nonattainment-voc-nox-marginal",
      "url": "https://referencesource.org/clean-air-act-major-source-thresholds/ozone-nonattainment-voc-nox-marginal/",
      "source": "https://www.ecfr.gov/current/title-40/chapter-I/subchapter-C/part-70/subpart-A/section-70.2",
      "source_quote": "For ozone nonattainment areas, sources with the potential to emit 100 tpy or more of volatile organic compounds or oxides of nitrogen in areas classified or treated as classified as \u201cMarginal\u201d or \u201cModerate,\u201d 50 tpy or more in areas classified or treated as classified as \u201cSerious,\u201d 25 tpy or more in areas classified or treated as classified as \u201cSevere,\u201d and 10 tpy or more in areas classified or treated as classified as \u201cExtreme\u201d; except that the references in this paragraph to 100, 50, 25 and 10 tpy of nitrogen oxides shall not apply with respect to any source for which the Administrator has made a finding, under section 182(f)(1) or (2) of the Act, that requirements under section 182(f) of the Act do not apply;",
      "verified_fields": [
        "area_classification",
        "definition_heading",
        "pollutant",
        "threshold_tpy"
      ],
      "derived_fields": [
        "row_id",
        "test"
      ]
    },
    {
      "row_id": "ozone-nonattainment-voc-nox-moderate",
      "test": "Part D Title I nonattainment major stationary source",
      "pollutant": "volatile organic compounds or oxides of nitrogen",
      "area_classification": "Moderate",
      "threshold_tpy": "100",
      "definition_heading": "Major source means any stationary source",
      "id": "ozone-nonattainment-voc-nox-moderate",
      "url": "https://referencesource.org/clean-air-act-major-source-thresholds/ozone-nonattainment-voc-nox-moderate/",
      "source": "https://www.ecfr.gov/current/title-40/chapter-I/subchapter-C/part-70/subpart-A/section-70.2",
      "source_quote": "For ozone nonattainment areas, sources with the potential to emit 100 tpy or more of volatile organic compounds or oxides of nitrogen in areas classified or treated as classified as \u201cMarginal\u201d or \u201cModerate,\u201d 50 tpy or more in areas classified or treated as classified as \u201cSerious,\u201d 25 tpy or more in areas classified or treated as classified as \u201cSevere,\u201d and 10 tpy or more in areas classified or treated as classified as \u201cExtreme\u201d; except that the references in this paragraph to 100, 50, 25 and 10 tpy of nitrogen oxides shall not apply with respect to any source for which the Administrator has made a finding, under section 182(f)(1) or (2) of the Act, that requirements under section 182(f) of the Act do not apply;",
      "verified_fields": [
        "area_classification",
        "definition_heading",
        "pollutant",
        "threshold_tpy"
      ],
      "derived_fields": [
        "row_id",
        "test"
      ]
    },
    {
      "row_id": "ozone-nonattainment-voc-nox-serious",
      "test": "Part D Title I nonattainment major stationary source",
      "pollutant": "volatile organic compounds or oxides of nitrogen",
      "area_classification": "Serious",
      "threshold_tpy": "50",
      "definition_heading": "Major source means any stationary source",
      "id": "ozone-nonattainment-voc-nox-serious",
      "url": "https://referencesource.org/clean-air-act-major-source-thresholds/ozone-nonattainment-voc-nox-serious/",
      "source": "https://www.ecfr.gov/current/title-40/chapter-I/subchapter-C/part-70/subpart-A/section-70.2",
      "source_quote": "For ozone nonattainment areas, sources with the potential to emit 100 tpy or more of volatile organic compounds or oxides of nitrogen in areas classified or treated as classified as \u201cMarginal\u201d or \u201cModerate,\u201d 50 tpy or more in areas classified or treated as classified as \u201cSerious,\u201d 25 tpy or more in areas classified or treated as classified as \u201cSevere,\u201d and 10 tpy or more in areas classified or treated as classified as \u201cExtreme\u201d; except that the references in this paragraph to 100, 50, 25 and 10 tpy of nitrogen oxides shall not apply with respect to any source for which the Administrator has made a finding, under section 182(f)(1) or (2) of the Act, that requirements under section 182(f) of the Act do not apply;",
      "verified_fields": [
        "area_classification",
        "definition_heading",
        "pollutant",
        "threshold_tpy"
      ],
      "derived_fields": [
        "row_id",
        "test"
      ]
    },
    {
      "row_id": "ozone-nonattainment-voc-nox-severe",
      "test": "Part D Title I nonattainment major stationary source",
      "pollutant": "volatile organic compounds or oxides of nitrogen",
      "area_classification": "Severe",
      "threshold_tpy": "25",
      "definition_heading": "Major source means any stationary source",
      "id": "ozone-nonattainment-voc-nox-severe",
      "url": "https://referencesource.org/clean-air-act-major-source-thresholds/ozone-nonattainment-voc-nox-severe/",
      "source": "https://www.ecfr.gov/current/title-40/chapter-I/subchapter-C/part-70/subpart-A/section-70.2",
      "source_quote": "For ozone nonattainment areas, sources with the potential to emit 100 tpy or more of volatile organic compounds or oxides of nitrogen in areas classified or treated as classified as \u201cMarginal\u201d or \u201cModerate,\u201d 50 tpy or more in areas classified or treated as classified as \u201cSerious,\u201d 25 tpy or more in areas classified or treated as classified as \u201cSevere,\u201d and 10 tpy or more in areas classified or treated as classified as \u201cExtreme\u201d; except that the references in this paragraph to 100, 50, 25 and 10 tpy of nitrogen oxides shall not apply with respect to any source for which the Administrator has made a finding, under section 182(f)(1) or (2) of the Act, that requirements under section 182(f) of the Act do not apply;",
      "verified_fields": [
        "area_classification",
        "definition_heading",
        "pollutant",
        "threshold_tpy"
      ],
      "derived_fields": [
        "row_id",
        "test"
      ]
    },
    {
      "row_id": "ozone-transport-region-voc",
      "test": "Part D Title I nonattainment major stationary source",
      "pollutant": "volatile organic compounds",
      "area_classification": "ozone transport region",
      "threshold_tpy": "50",
      "definition_heading": "Major source means any stationary source",
      "id": "ozone-transport-region-voc",
      "url": "https://referencesource.org/clean-air-act-major-source-thresholds/ozone-transport-region-voc/",
      "source": "https://www.ecfr.gov/current/title-40/chapter-I/subchapter-C/part-70/subpart-A/section-70.2",
      "source_quote": "For ozone transport regions established pursuant to section 184 of the Act, sources with the potential to emit 50 tpy or more of volatile organic compounds;",
      "verified_fields": [
        "area_classification",
        "definition_heading",
        "pollutant",
        "threshold_tpy"
      ],
      "derived_fields": [
        "row_id",
        "test"
      ]
    },
    {
      "row_id": "pm10-nonattainment-serious",
      "test": "Part D Title I nonattainment major stationary source",
      "pollutant": "PM-10",
      "area_classification": "Serious",
      "threshold_tpy": "70",
      "definition_heading": "Major source means any stationary source",
      "id": "pm10-nonattainment-serious",
      "url": "https://referencesource.org/clean-air-act-major-source-thresholds/pm10-nonattainment-serious/",
      "source": "https://www.ecfr.gov/current/title-40/chapter-I/subchapter-C/part-70/subpart-A/section-70.2",
      "source_quote": "For particulate matter (PM-10) nonattainment areas classified or treated as classified as \u201cSerious,\u201d sources with the potential to emit 70 tpy or more of PM-10.",
      "verified_fields": [
        "area_classification",
        "definition_heading",
        "pollutant",
        "threshold_tpy"
      ],
      "derived_fields": [
        "row_id",
        "test"
      ]
    },
    {
      "row_id": "psd-any-other-source-250tpy",
      "test": "PSD major stationary source (40 CFR 52.21) \u2014 any other source category",
      "pollutant": "a regulated NSR pollutant",
      "threshold_tpy": "250",
      "definition_heading": "Major stationary source means",
      "id": "psd-any-other-source-250tpy",
      "url": "https://referencesource.org/clean-air-act-major-source-thresholds/psd-any-other-source-250tpy/",
      "source": "https://www.ecfr.gov/current/title-40/chapter-I/subchapter-C/part-52/subpart-A/section-52.21",
      "source_quote": "Notwithstanding the stationary source size specified in <https://www.ecfr.gov/current/title-40/section-52.21#p-52.21(b)(1)(i)(a)> paragraph (b)(1)(i)(a) of this section, any stationary source which emits, or has the potential to emit, 250 tons per year or more of a regulated NSR pollutant; or",
      "verified_fields": [
        "definition_heading",
        "pollutant",
        "threshold_tpy"
      ],
      "derived_fields": [
        "row_id",
        "test"
      ]
    },
    {
      "row_id": "psd-listed-source-category-100tpy",
      "test": "PSD major stationary source (40 CFR 52.21) \u2014 one of the listed source categories",
      "pollutant": "any regulated NSR pollutant",
      "threshold_tpy": "100",
      "definition_heading": "Major stationary source means",
      "id": "psd-listed-source-category-100tpy",
      "url": "https://referencesource.org/clean-air-act-major-source-thresholds/psd-listed-source-category-100tpy/",
      "source": "https://www.ecfr.gov/current/title-40/chapter-I/subchapter-C/part-52/subpart-A/section-52.21",
      "source_quote": "Any of the following stationary sources of air pollutants which emits, or has the potential to emit, 100 tons per year or more of any regulated NSR pollutant: Fossil fuel-fired steam electric plants of more than 250 million British thermal units per hour heat input, coal cleaning plants (with thermal dryers), kraft pulp mills, portland cement plants, primary zinc smelters, iron and steel mill plants, primary aluminum ore reduction plants (with thermal dryers), primary copper smelters, municipal incinerators capable of charging more than 50 tons of refuse per day, hydrofluoric, sulfuric, and nitric acid plants, petroleum refineries, lime plants, phosphate rock processing plants, coke oven batteries, sulfur recovery plants, carbon black plants (furnace process), primary lead smelters, fuel conversion plants, sintering plants, secondary metal production plants, chemical process plants (which does not include ethanol production facilities that produce ethanol by natural fermentation included in NAICS codes 325193 or 312140), fossil-fuel boilers (or combinations thereof) totaling more than 250 million British thermal units per hour heat input, petroleum storage and transfer units with a total storage capacity exceeding 300,000 barrels, taconite ore processing plants, glass fiber processing plants, and charcoal production plants;",
      "verified_fields": [
        "definition_heading",
        "pollutant",
        "threshold_tpy"
      ],
      "derived_fields": [
        "row_id",
        "test"
      ]
    },
    {
      "row_id": "section112-combined-hap",
      "test": "Section 112 HAP major source",
      "pollutant": "any combination of such hazardous air pollutants",
      "threshold_tpy": "25",
      "definition_heading": "Major source means any stationary source",
      "id": "section112-combined-hap",
      "url": "https://referencesource.org/clean-air-act-major-source-thresholds/section112-combined-hap/",
      "source": "https://www.ecfr.gov/current/title-40/chapter-I/subchapter-C/part-70/subpart-A/section-70.2",
      "source_quote": "For pollutants other than radionuclides, any stationary source or group of stationary sources located within a contiguous area and under common control that emits or has the potential to emit, in the aggregate, 10 tons per year (tpy) or more of any hazardous air pollutant which has been listed pursuant to section 112(b) of the Act, 25 tpy or more of any combination of such hazardous air pollutants, or such lesser quantity as the Administrator may establish by rule.",
      "verified_fields": [
        "definition_heading",
        "pollutant",
        "threshold_tpy"
      ],
      "derived_fields": [
        "row_id",
        "test"
      ]
    },
    {
      "row_id": "section112-radionuclides",
      "test": "Section 112 HAP major source",
      "pollutant": "radionuclides",
      "threshold_tpy": "specified by the Administrator by rule",
      "definition_heading": "Major source means any stationary source",
      "id": "section112-radionuclides",
      "url": "https://referencesource.org/clean-air-act-major-source-thresholds/section112-radionuclides/",
      "source": "https://www.ecfr.gov/current/title-40/chapter-I/subchapter-C/part-70/subpart-A/section-70.2",
      "source_quote": "For radionuclides, \u201cmajor source\u201d shall have the meaning specified by the Administrator by rule.",
      "verified_fields": [
        "definition_heading",
        "pollutant",
        "threshold_tpy"
      ],
      "derived_fields": [
        "row_id",
        "test"
      ]
    },
    {
      "row_id": "section112-single-hap",
      "test": "Section 112 HAP major source",
      "pollutant": "any hazardous air pollutant which has been listed pursuant to section 112(b) of the Act",
      "threshold_tpy": "10",
      "definition_heading": "Major source means any stationary source",
      "id": "section112-single-hap",
      "url": "https://referencesource.org/clean-air-act-major-source-thresholds/section112-single-hap/",
      "source": "https://www.ecfr.gov/current/title-40/chapter-I/subchapter-C/part-70/subpart-A/section-70.2",
      "source_quote": "For pollutants other than radionuclides, any stationary source or group of stationary sources located within a contiguous area and under common control that emits or has the potential to emit, in the aggregate, 10 tons per year (tpy) or more of any hazardous air pollutant which has been listed pursuant to section 112(b) of the Act, 25 tpy or more of any combination of such hazardous air pollutants, or such lesser quantity as the Administrator may establish by rule.",
      "verified_fields": [
        "definition_heading",
        "pollutant",
        "threshold_tpy"
      ],
      "derived_fields": [
        "row_id",
        "test"
      ]
    },
    {
      "row_id": "section302-any-regulated-pollutant",
      "test": "Section 302 major stationary source (Title V, 40 CFR 70.2)",
      "pollutant": "any air pollutant subject to regulation",
      "threshold_tpy": "100",
      "definition_heading": "Major source means any stationary source",
      "id": "section302-any-regulated-pollutant",
      "url": "https://referencesource.org/clean-air-act-major-source-thresholds/section302-any-regulated-pollutant/",
      "source": "https://www.ecfr.gov/current/title-40/chapter-I/subchapter-C/part-70/subpart-A/section-70.2",
      "source_quote": "A major stationary source of air pollutants, as defined in section 302 of the Act, that directly emits, or has the potential to emit, 100 tpy or more of any air pollutant subject to regulation (including any major source of fugitive emissions of any such pollutant, as determined by rule by the Administrator).",
      "verified_fields": [
        "definition_heading",
        "pollutant",
        "threshold_tpy"
      ],
      "derived_fields": [
        "row_id",
        "test"
      ]
    },
    {
      "row_id": "section302-ghg-co2e",
      "test": "Section 302 major stationary source (Title V, 40 CFR 70.2) \u2014 greenhouse-gas \u2018subject to regulation\u2019 threshold",
      "pollutant": "Greenhouse gases (GHGs)",
      "threshold_tpy": "100,000",
      "definition_heading": "Major source means any stationary source",
      "id": "section302-ghg-co2e",
      "url": "https://referencesource.org/clean-air-act-major-source-thresholds/section302-ghg-co2e/",
      "source": "https://www.ecfr.gov/current/title-40/chapter-I/subchapter-C/part-70/subpart-A/section-70.2",
      "source_quote": "Greenhouse gases (GHGs), the air pollutant defined in <https://www.ecfr.gov/current/title-40/section-86.1818-12#p-86.1818-12(a)> \u00a7 86.1818-12(a) of this chapter as the aggregate group of six greenhouse gases: carbon dioxide, nitrous oxide, methane, hydrofluorocarbons, perfluorocarbons, and sulfur hexafluoride, shall not be subject to regulation unless, as of July 1, 2011, the GHG emissions are at a stationary source emitting or having the potential to emit 100,000 tpy CO2 equivalent emissions.",
      "verified_fields": [
        "definition_heading",
        "pollutant",
        "threshold_tpy"
      ],
      "derived_fields": [
        "row_id",
        "test"
      ]
    }
  ]
}