# Air purifiers: research notes

Date: 2026-10-19. Scope: portable room air cleaners (tower, tabletop, box-filter and PC-fan units) sold for homes, including carbon-heavy gas units; excludes in-duct and whole-house HVAC filters. In the Zamana taxonomy these sit under machines/appliances, add-on `air_purifier.jsonc`, composed with `appliances-standard.jsonc` and `machines-standard.jsonc`.

Quote labels: **verbatim** = the sentence as it appears in the page or PDF text I downloaded and read (curl plus a tag-stripper, or pdftotext); **fetched excerpt** = the fetch tool or my own trimming lightly reworded it; **search excerpt** = the claim came only from a search-engine summary because the page would not load. No search-excerpt-only number is in the JSON.

## Seed

Seed (run before this session, recorded verbatim from the brief):

- Example: olive-oil `harvest_date` — a facet experts rank first, almost no listing carries it, expensive to backfill; list it, mark it researched, limit backfill to top N; plus a derived metric hanging off a researched facet.
- Persona: "A ship's cook, who thinks in shelf life, storage and what works without the ideal setup."
- Ask: what is the air-purifier equivalent of that example, and what would that persona notice first that a typical buyer would not? Keep what survives the data check; drop the rest and say so.

1. **The air-purifier equivalent of harvest date is the quiet CADR**: the clean air a unit delivers at the fastest speed you will actually tolerate (HouseFresh draws the line at 45 dBA, Consumer Reports at 50 dB). The rated CADR is measured at top speed (EPA, CR, HouseFresh all say so), and a unit that is too loud gets turned down or off (EPA technical summary). The two reviewers who measure rank on it: HouseFresh's "Performance" score uses top speed and the highest sub-45 dBA speed; CR tests dust and smoke removal at high speed and at a speed no louder than 50 dB. No listing carries it, and only a test chamber or a particle counter produces it, so backfill is expensive. Survived the data check: kept as facet `quiet_cadr`, researched, backfill high, top N from HouseFresh and CR data. The derived metric hanging off it is `quiet_air_changes`, the air changes per hour the buyer gets in their own room at the quiet speed.
2. **What the ship's cook notices first** is everything about running the thing for months away from ideal conditions:
   - *Shelf life of the consumable*: the carbon stage saturates far faster than the particle filter (CR: carbon every three months against six to 12 for the mechanical filter; EPA: thin carbon layers "can become quickly saturated"). Survived as facet `filter_life_months` and derived metric `annual_filter_cost`, and in `gas_filtration`.
   - *Storage and resupply*: AHAM tells wildfire-region buyers to "Keep extra filters on hand" because "Demand for both may rise during smoke events". Generic filters are widely sold at about half the price (HouseFresh on the Vital 200S), but the brand's CADR applies only to its own filter (Levoit's Amazon disclaimer; AHAM's genuine-filter post). Survived as a judgement and in `annual_filter_cost`; a separate "generic filters available" facet was dropped because no source counts availability across models.
   - *What works without the ideal setup*: a box fan with MERV-13 furnace filters taped to it (the Corsi–Rosenthal box) cleans a test room nearly as fast as a $900 unit (HouseFresh), and EPA lists it as the fallback when you cannot get a unit with a known CADR. That supports the judgement that airflow matters more than filter grade, and the vocabulary entry. Also from this lens: after a power cut the Winix 5500-2 forgets its settings and turns its ionizer back on (HouseFresh), which survived as a sentence in `ionizing_stage`. Placement matters too (AHAM: a corner "will restrict airflow and reduce performance"), kept as a backfill note, not a facet.
   - Dropped: battery or off-grid operation (no source treats it as a buying criterion and almost no units offer it); sealed-filter shelf life in storage (Levoit's Vital 200S-P filter page says "Filters ship sealed to preserve service life—remove plastic packaging before use", but no source gives a storage life, so no facet); "filter subscription" offers (retail mechanics, not expertise).

## Sources and what each supports

### Standards and certification bodies

**AHAM Verifide, How to choose the best air cleaner for your home**
https://ahamverifide.org/how-to-choose-the-best-air-cleaner-for-your-home/
- verbatim: "The most important detail to know is the size of the room in which the air cleaner will primarily be used."
- verbatim: "CADR is a measurement of how fast an air cleaner filters three commonly sized particulates: dust, pollen and tobacco."
- verbatim: "Follow the 2/3 rule, and choose an air cleaner with a tobacco smoke rating that is two-thirds the size of the room's area. That means a room that is 200 square feet, would require an air cleaner with a CADR for tobacco smoke of at least 132."
- verbatim: "don't just choose the air cleaner with the highest numbers. You might end up with one that is too large for the room, leading to unnecessary energy use and noise."
- verbatim: "Certain air cleaners, depending on the design, aren't as effective if placed in the corner of a room."
- verbatim: CADR is tested "at an independent laboratory using the American National Standard, known as ANSI/AHAM-AC-1."
- Supports: room size first, the 2/3 rule, smoke as the sizing number, placement. Confidence high.

**AHAM Verifide, Air Changes per Hour FAQ**
https://ahamverifide.org/ach-faq/
- verbatim: "Look for the AHAM Verifide seal to find the suggested room size based on 4.8 air changes per hour".
- verbatim: "IAQ researchers have found that the minimum ventilation recommendation is three ACH ... AHAM Verifide air cleaners are tested by an independent laboratory to ensure that they provide 4.8 ACH for their suggested room size".
- Supports: the label room size is CADR at 4.8 ACH. Confidence high.

**AHAM Consumer Blog, Tips for Choosing the Ideal Portable Room Air Cleaner (4 Dec 2024)**
https://blog.aham.org/tips-for-choosing-the-ideal-portable-room-air-cleaner/
- verbatim: "Follow the 'two-thirds' rule and choose an air cleaner with a smoke CADR rating that is two-thirds the size of the room's area."
- verbatim: "If you are using an air cleaner to address wildfire smoke, AHAM recommends a model with a smoke CADR equal to the size of the room in square feet."
- verbatim: "AHAM considers CADR the most important metric for comparing air cleaner performance."
- verbatim: "Noise level : This is related to room size. Choosing an air cleaner properly sized for the space is the best way to ensure that the noise level is appropriate."
- Supports: 2/3 rule (second AHAM statement), wildfire sizing. Confidence high for what AHAM says.

**AHAM Consumer Blog, Using an Air Cleaner to Manage Wildfire Smoke (16 Jul 2026)**
https://blog.aham.org/using-an-air-cleaner-to-manage-wildfire-smoke/
- verbatim: "The smoke CADR should match the room's square footage for optimal performance during a smoke event. At other times, select a model with a smoke CADR that is two-thirds of the room's square footage."
- verbatim: "Keep extra filters on hand, especially during wildfire season." "Demand for both may rise during smoke events."
- verbatim: placing it "against a wall and in a corner ... will restrict airflow and reduce performance."
- verbatim: "An air cleaner with a HEPA filter and activated carbon filter can also help reduce the smell of smoke in your home."
- Supports: wildfire sizing (AHAM only; see single-source list), spare filters, carbon for smoke smell. Confidence high for what AHAM says.

**AHAM Consumer Blog, Why Genuine Replacement Air Filters Matter (6 Oct 2025)**
https://blog.aham.org/why-genuine-replacement-air-filters-matter-for-air-cleaners/
- verbatim: "Most just need a filter replacement about every 6 to 12 months".
- verbatim: "a non-genuine replacement filter might look identical online, cost half the price, claim the same performance as a genuine filter".
- verbatim: "Air cleaners are designed and tested with a specific filter. A non-genuine filter may not fit properly, allowing air and pollutants ... to bypass the filter."
- Supports: filter life 6 to 12 months (with CR), the case against generic filters. AHAM is the manufacturers' trade body, so this is an interested party. Confidence medium.

**Wikipedia, Clean air delivery rate**
https://en.wikipedia.org/wiki/Clean_air_delivery_rate
- verbatim: "The defined particle size ranges are 0.09–1.0 μm for smoke, 0.5–3 μm for dust, and 5–11 μm for pollen."
- verbatim: the 2/3 rule "is based on the assumption that the room will have air exchanged with other rooms at a rate of less than 1 room volume per hour, and that the customer desires at least 80% of the smoke particles removed from the air."
- verbatim: "a 99.97% HEPA filter (MERV 17) that removes over 99.9% of the smoke particles needs to filter 80 cubic feet per minute to get a CADR of 80. This shows the CFM airflow of a unit is always equal to or greater than the CADR rating."
- verbatim: "Filters with efficiencies higher than the original may slow the fan's airflow rate down, which may result in a lower CADR rating."
- verbatim: "Some low-efficiency filters employ ionization ... Ionization can also cause particulate matter to attach to surfaces such as walls, and flooring, resulting in lower particulate counts in the air, but without having particulate matter permanently removed from the air."
- verbatim: ANSI/AHAM AC-1 "became an American National Standard in 1988 and was last revised in 2020."
- Supports: CADR = airflow × single-pass efficiency; denser filters can lower CADR; the ionizer caveat. Confidence high (consistent with EPA technical summary).

**Wikipedia, HEPA**
https://en.wikipedia.org/wiki/HEPA
- verbatim: "at least 99.95% (ISO, European Standard) or 99.97% (ASME, U.S. DOE) of particles whose diameter is equal to 0.3 μm".
- verbatim: EN 1822 table: "H13 ... ≥ 99.95%", "H14 ... ≥ 99.995%", "E12 ... ≥ 99.5%", "E10 ... ≥ 85%".
- verbatim: "the marketing term "True HEPA" ... has no legal or scientific meaning." "Products that are marketed to be "HEPA-type," "HEPA-like," "HEPA-style" or "99% HEPA" do not satisfy the HEPA standard".
- Supports: HEPA definitions and the HEPA-type caveat. Confidence high.

**en1822.info, EN 1822 overview**
https://www.en1822.info/
- verbatim: "It defines the world's most widely recognised filter classes: E10, E11, E12, H13, H14, U15, U16 and U17, covering overall efficiencies from 85 % to 99.999995 %."
- verbatim: "An H13 filter achieving 99.95 % efficiency at its MPPS will perform better at all other particle sizes."
- Supports: second source for H13 = 99.95% at MPPS and E10 = 85%. Confidence high.

**ENERGY STAR, Room Air Cleaners Key Product Criteria (current; spec effective 9 Oct 2025)**
https://www.energystar.gov/products/air_purifiers_cleaners/key_product_criteria
- verbatim: "To certify for ENERGY STAR, measured ozone, per UL 867 Ed. 5.0, shall not exceed 50 parts per billion (ppb)."
- verbatim: Table 1 minimum IEF: "30 ≤ PM 2.5 CADR < 100 | 4.4", "100 ≤ PM 2.5 CADR < 150 | 5.4", "PM 2.5 CADR ≥ 150 | 5.6".
- verbatim: "Report the filter type shipped with the product and the replacement filter model number."

**ENERGY STAR Version 3.0 Room Air Cleaners Final Draft Specification (PDF, read locally)**
https://www.energystar.gov/sites/default/files/2024-11/ENERGY%20STAR%20Version%203.0%20Room%20Air%20Cleaners%20Final%20Draft%20Specification.pdf
- verbatim: Table 1 "30 ≤ PM2.5 CADR < 100 4.4", "100 ≤ PM2.5 CADR < 150 5.4", "PM2.5 CADR ≥ 150 5.6".
**ENERGY STAR Version 3.0 Final Specification Cover Memo, 6 Jan 2025 (PDF, read locally)**
https://www.energystar.gov/sites/default/files/2025-01/ENERGY%20STAR%20Version%203.0%20Room%20Air%20Cleaners%20Final%20Specification%20Cover%20Memo%20(002).pdf
- verbatim: "The effective date will be October 9, 2025." "this revision shifts the criteria from Smoke CADR/W (Clean Air Delivery Rate per Watt) to the PM2.5 CADR/W and the Integrated Energy Factor (IEF) metric referenced in the DOE test procedure and minimum standard." "The EPA did not receive any comments on the final draft."
- Supports (three together): ENERGY STAR v3 minimum IEF 4.4 / 5.4 / 5.6 CADR/W. Confidence high.

**ENERGY STAR, Room air cleaners product page**
https://www.energystar.gov/products/air_purifiers_cleaners
- verbatim: the same sizing table as EPA: "Room area (square feet) | 100 | 200 | 300 | 400 | 500 | 600" against "Minimum CADR (cfm) | 65 | 130 | 195 | 260 | 325 | 390".
- verbatim: "A standard room air cleaner, operating continuously, uses approximately 394 kWh per year in electricity." (single source; not in the JSON)
- verbatim: "ENERGY STAR certified room air cleaners are more than 50% more energy-efficient than standard models" (CR says 40 percent; disagreement, not in the JSON).

**ENERGY STAR Certified Room Air Cleaners V3.0 dataset (Socrata API, downloaded)**
https://data.energystar.gov/resource/gaa3-swy6.json
- 247 certified models on 2026-10-19. Fields include `room_size_sq_ft`, `smoke_free_clean_air_delivery`, `pm25_cadr`, `integrated_energy_factor_cfm_w`, `annual_energy_use_kwh_yr`, `technology_types`, `ozone_emissions_ppb`, `filter_1_type`, `automatic_mode`.
- My computations: room size ÷ smoke CADR ranges 1.538 to 1.559 across all 247 rows, median 1.55. Smoke CADR: min 31, 10th percentile 54, median 161, 90th percentile 378, max 577 cfm. 68 percent of models reach 133 cfm, 33 percent reach 267 cfm. IEF median 6.2. `filter_1_type`: 218 "HEPA-Type", 20 "HEPA", 6 composite, 3 other. `technology_types`: 236 plain "Fan and Filter"; 11 list an ion generator, PlasmaWave, UV or electrostatic plates; ozone 0 to 5 ppb. Blueair 211i Max (model 3613111100) is listed as plain "Fan and Filter" here but as "Electronic" on the CARB list, so this field under-reports ionizers.
- Supports: the label room size is CADR × 1.55; where most certified CADRs sit; that the ENERGY STAR feed is a cheap backfill route for CADR. Confidence high (it is the certifier's data).

**10 CFR 430.32(ee), via Cornell LII**
https://www.law.cornell.edu/cfr/text/10/430.32
- verbatim: conventional room air cleaners "manufactured on or after December 31, 2025, shall have an integrated energy factor (IEF) in PM 2.5 CADR/W ... that meets or exceeds": "10 ≤PM 2.5 CADR <100 | 1.9", "100 ≤PM 2.5 CADR <150 | 2.4", "PM 2.5 CADR ≥150 | 2.9". Earlier tier (Dec 2023 to Dec 2025): 1.7, 1.9, 2.0.
**ENERGY STAR Room Air Cleaners Version 2.0 Final Draft (PDF, read locally)**
https://energystar.gov/sites/default/files/Room%20Air%20Cleaners%20V2%20Final%20Draft%20Specification.pdf
- verbatim: Table 1 "30 ≤ CADR < 100 1.9", "100 ≤ CADR < 150 2.4", "CADR ≥ 150 2.9" (smoke CADR/W).
- Supports (together): the federal floor from 31 Dec 2025 is the old ENERGY STAR v2 level, 1.9 / 2.4 / 2.9; the current ENERGY STAR level is about double. Confidence high.

### Regulators

**CARB, California Certified Air Cleaning Devices (list page, downloaded)**
https://ww2.arb.ca.gov/our-work/programs/air-cleaners-ozone-products/california-certified-air-cleaning-devices
- verbatim: "Since 2010, all portable indoor air cleaning devices sold to people or businesses in California are required to be certified by CARB." "Electronic air cleaners must also be tested for ozone emissions and meet an ozone emission concentration limit of 0.050 parts per million (50 ppb)."
- verbatim: "CARB certification does not reflect air cleaner effectiveness or "health safety"".
- verbatim: "Mechanical : Air cleaners that are listed as "Mechanical" are those that only use physical filtration ... and do not generate ozone or ions." "Electronic : ... This category includes ionizers, electrostatic precipitators, PCOs, hydroxyl generators, devices with UV light components".
- Counts in the downloaded table: 7,857 rows "Mechanical", 5,304 rows "Electronic" (rows are model listings, many duplicated across brand names).
- Model rows read: "Coway ... AP-1512HH | Electronic", "Winix | 5300-2 | 5500-2 | Electronic", "Blueair AB | Blue Pure 211i Max | 3613111100 | Electronic", "Levoit | Air Purifier | Core 300 | Mechanical", "Levoit | Air Purifier | Core 300S | Mechanical".
- Supports: the 50 ppb limit; CARB says nothing about effectiveness; a per-model Mechanical/Electronic flag exists, which makes `ionizing_stage` a cheap lookup. Confidence high.

**CARB, Air cleaner information for consumers**
https://ww2.arb.ca.gov/our-work/programs/air-cleaners-ozone-products/air-cleaner-information-consumers
- verbatim: "The regulation requires all indoor air cleaners sold in California to be certified by CARB, including air cleaners sold online."
- verbatim: "CARB strongly advises against the use of ozone generators at home".
- Supports: online sales covered; ozone generators. Confidence high.

**US EPA, Guide to Air Cleaners in the Home (web)**
https://www.epa.gov/indoor-air-quality-iaq/guide-air-cleaners-home
- verbatim: sizing table "Room area (square feet) 100 200 300 400 500 600" / "Minimum CADR (cfm) 65 130 195 260 325 390"; "The CADRs are calculated based on an 8-foot ceiling. If you have higher ceilings, you may want to select a portable air cleaner with a higher CADR."
- verbatim: "there are no widely used performance rating systems for portable air cleaners or filters designed to remove gases. The CADR rating system is for particles only. Activated carbon filters can be effective, provided that there is a large amount of material used in the filter."
- verbatim: "They can be effective when there is a large amount of material used in the filter (the thicker the better). Research has not yet shown that other technologies such as plasma, photocatalytic oxidation, or ultraviolet (UV) light can remove gases effectively in portable residential air cleaners."
- verbatim: "The rating is typically measured at the air cleaner's highest speed."
- verbatim: "Avoid portable air cleaners and furnace/HVAC filters that intentionally produce ozone." "air cleaners that contain electrostatic precipitators, ionizers, UV lights without adequate lamp coatings, and plasma air cleaners may have the potential to emit ozone."
- verbatim: "a noise rating around 50 decibels (dB) is roughly the operating noise of a modern refrigerator."
- Supports: sizing table (0.65 cfm per sq ft), CADR is particle-only, carbon mass, ozone caution, CADR at top speed. Confidence high.

**US EPA, Residential Air Cleaners: A Technical Summary, 3rd ed. (PDF, read locally with pdftotext)**
https://www.epa.gov/sites/default/files/2018-07/documents/residential_air_cleaners_-_a_technical_summary_3rd_edition.pdf
- verbatim: "Portable air cleaner performance ratings are determined at maximum airflow and therefore typically maximum noise levels. Quantified noise levels are seldom shown on consumer product packaging."
- verbatim: "Objectionable noise levels can reduce usage and discourage the placement of air cleaners in sleeping spaces".
- verbatim: "While lower airflow settings may have lower noise production, the CADR may not be known (but it could be considerably lower than the highest advertised and thus significantly less effective at pollutant removal)."
- verbatim: "after an initial period of use and enthusiasm, the device is often not maintained properly, operated less frequently, turned off completely, or placed into storage, often because of occupant annoyance related to noise or other factors."
- verbatim: "On average, CADRs for pollen are typically approximately 5 percent greater than dust CADRs, while CADRs for tobacco smoke are approximately 4 percent lower than dust CADRs. Therefore ... tobacco smoke CADRs should be used as the most conservative estimate."
- verbatim: room size recommendation "is calculated based on an 80-percent reduction in steady-state particle concentrations ... This level of effectiveness assumes a flow rate of clean air that is four to five times the volume of the room".
- verbatim: "CADRs for fine and ultrafine particles commonly range from less than approximately 20 cfm for ionizers and PCO portable air cleaners to between approximately 150 and 300 cfm for many HEPA and ESP portable air cleaners".
- verbatim: "activated carbon is not especially effective against oxides of sulfur, hydrogen sulfide, low molecular weight aldehydes (e.g., formaldehyde), ammonia, and nitrogen oxide."
- verbatim: "such thin layers can become quickly saturated, and the filter can become a source of previously adsorbed pollutants".
- verbatim: "Plasma air cleaners have been shown to form particles, ozone, carbon monoxide, and formaldehyde as byproducts." "many electronic air cleaner devices—including portable and duct-mounted ESPs, ionizers or ion generators, uncoated UVGI lamps, and other products that advertise the use of "plasma," "ions," and other similar terms—can generate high amounts of ozone."
- verbatim: "Apart from California Air Resources Board requirements, no U.S. standard, regulation, or industry consensus program requires measurement and disclosure of ozone production by air cleaners."
- verbatim (glossary): HEPA filter: "minimum fractional particle removal efficiency of 99.97 percent for all particles of 0.3 μm diameter".
- Supports: nearly every mechanism claim; noise and quiet-speed CADR; smoke as the conservative CADR; carbon limits; ionizer byproducts. Confidence high.

**US EPA, Wildfires and Indoor Air Quality**
https://www.epa.gov/emergencies-iaq/wildfires-and-indoor-air-quality-iaq
- verbatim: "Make sure the portable air cleaner does not produce ozone." "DIY air cleaners are made by attaching one or more furnace filters to a box fan ... Note that commercial air cleaners with a known clean air delivery rate (CADR) are typically preferred over DIY air cleaners." "run it as often as possible on the highest fan speed."
- Supports: DIY fallback; CADR-known units preferred. Confidence high.

**BBB National Programs, NAD: Vesync voluntarily discontinues certain HEPA claims (15 Aug 2023)**
https://bbbprograms.org/media/newsroom/decisions/vesync-hepa-air-purifiers
- verbatim: "Dyson challenged claims that Vesync's Levoit EverestAir Smart True HEPA, Core 300, and Core 300S True HEPA air purifiers and their respective replacement filters have passed HEPA standards". "NAD did not review the claims on their merits."
**Open Class Actions, Levoit HEPA settlement**
https://openclassactions.com/settlements/false-advertising/levoit-air-purifier-hepa-class-action-settlement.php
- verbatim: buyers of Levoit Core or EverestAir units or filters "labeled "True HEPA," "HEPA" or "H13" in the United States between August 29, 2019 and August 4, 2023 may qualify to claim a $10 digital payment". "Vesync unequivocally denies all allegations".
- Supports: the best-selling brand dropped its HEPA labelling under challenge; the HEPA word on a listing is contested. Confidence high for the events, no finding on the merits.

### Specialist reviewers who measure

**Consumer Reports, Air purifier buying guide**
https://www.consumerreports.org/appliances/air-purifiers/buying-guide/
- verbatim: "we test for dust and smoke removal both on the highest speed and at a lower speed that runs at a noise level no louder than 50 decibels. We also measure noise levels at every speed setting ... we calculate annual operating costs, which include filter replacements and energy use to run the machine 24 hours a day".
- verbatim: "buy an air purifier certified for a larger area so that you can run it on a low speed and still have it work effectively for your space."
- verbatim: "Most models suitable for large rooms (350 square feet and larger) can also work well for smaller rooms at lower speeds. Lower speeds tend to be quieter, which is nice when you're watching TV or sleeping."
- verbatim: "If an air purifier has an AHAM Verified seal, you can trust that the unit can handle the suggested room size listed. Be wary about manufacturers' claims, though. We've tested many air purifiers that aren't suitable for their claimed room sizes."
- verbatim: carbon filters are "not particularly effective against formaldehyde, ammonia, or nitrogen oxide"; "Activated carbon filters get saturated faster than mechanical filters ... every three months, as opposed to every six to 12 months." "Activated carbon filters often cost up to $50 each."
- verbatim: "(Filters labeled "HEPA-type" or "HEPA-like" haven't been certified to meet true HEPA requirements but may still perform adequately in our tests.)"
- verbatim: "Electrostatic precipitators and ionizers: ... CR doesn't typically test electronic air purifiers, and we don't recommend them because they can produce ozone."
- verbatim: filter costs "ranged from $20 to more than $200"; mechanical filters "need to be replaced every six to 12 months."
- verbatim: "Energy Star certified purifiers are 40 percent more energy-efficient than standard models." (disagrees with ENERGY STAR's own "more than 50%"; neither figure used)
- verbatim: "Most portable air purifiers weigh between 10 and 20 pounds."
- Supports: quiet-speed testing, sizing up for bedrooms, AHAM trust, carbon saturation and limits, ionizer stance, filter life. Confidence high.

**HouseFresh, How we test air purifiers**
https://housefresh.com/how-we-test-air-purifiers/
- verbatim: "Many air purifier manufacturers include sound in decibels when running the device at the highest fan speed based on their own tests. Unfortunately, we have found that some brands will understate these figures".
- verbatim: "CADR tests completed by the Association of Home Appliance Manufacturers are conducted at full power, so those CADR scores you see in specs tables and marketing materials only apply if you are going to use the air purifier a top speed."
- verbatim: "Performance: How well a model cleared our 728 cubic feet test room of PM1 particles when running at its highest and sub-45dBA speeds."
- verbatim: "We use manufacturer data on filter lifespan and always stick to the shortest estimate (e.g. if the manufacturer states 6-12 months, we will calculate filter replacement costs with 6 months as our base)."
- verbatim: "Small air purifiers might require two filter changes per year, and since filters range from $50 to $100 per filter, the costs can add up quickly."
- Supports: the quiet-CADR idea and the 45 dBA line; the annual-filter-cost method. Confidence high.

**HouseFresh reviews (measured spec boxes)**
- Levoit Vital 200S https://housefresh.com/levoit-vital-200s-review/ — verbatim: "Top speed PM1 CADR: 249 cfm – Sub-45 dBA PM1 CADR: 128 cfm"; noise "Speed 1: 38.3 dB Speed 2: 41.9 dB Speed 3: 53.8 dB Speed 4: 57.7 dB"; power "Standby mode: 0.97 watts ... Speed 4: 44.55 watts"; "a light detection mode that allows the device to switch off the display and run extra quiet when low light is detected. This is a great feature for those wanting to use it in a bedroom."; "a higher grade HEPA is not required to clean the air of even the tiniest particles, as lower grade filters still pick up these small particles in multiple passes."; "there are many generic filters available for half the price of the genuine filters from Levoit – it's worth mentioning that performance will vary".
- Levoit Core 600S https://housefresh.com/levoit-core-600s-review/ — verbatim: "Top speed PM1 CADR: 375 cfm – Sub-45 dBA PM1 CADR: 156 cfm – AHAM PM2.5 CADR: 398 cfm ( dust )".
- AirFanta 3Pro https://housefresh.com/airfanta-3pro-review/ — verbatim: "Top speed PM1 CADR: 353 cfm – Sub-45 dBA PM1 CADR: 213 cfm".
- CleanAirKits Luggable XL https://housefresh.com/cleanairkits-luggable-xl-review/ — verbatim: "Top speed PM1 CADR: 260 cfm – Sub-45 dBA PM1 CADR: 260 cfm".
- Winix A231 https://housefresh.com/winix-a231-review/ — verbatim: "Top speed PM1 CADR: 148 cfm – Sub-45 dBA PM1 CADR: 67 cfm"; "One big thing I like about Winix is that their Plasmawave technology is optional and easily switched off."
- Coway Airmega 100 https://housefresh.com/coway-airmega-100-review/ — verbatim: "Top speed PM1 CADR: 148 cfm – Sub-45 dBA PM1 CADR: 115 cfm".
- Winix 5500-2 https://housefresh.com/winix-5500-2-review/ — verbatim: "Smoke CADR: 232 cfm"; "With PlasmaWave enabled, the 5500-2 cleaned our test room in 23 minutes — without the ionizer, it still managed to clean the air in 24 minutes"; "No memory setting, so if you lose power, you lose your current settings — including the PlasmaWave function, which could generate ozone without you knowing if you don't switch it off".
- Coway Airmega Mighty2 https://housefresh.com/coway-airmega-mighty2-ap-1512n-review/ — verbatim: "Coway removed the ionizer, and it didn't have a negative impact on performance."
- Levoit Core 300 https://housefresh.com/levoit-core-300-review/ — verbatim: "Estimated running costs (electricity consumption + OEM filter replacements): | $109.14 per year".
- Supports: the quiet-CADR data table below; measured vs claimed noise; ionizer adds little in two tests. Confidence medium (one tester, PM1 method differs from AHAM's).

**HouseFresh, VOC and activated-carbon roundups**
https://housefresh.com/air-purifier-for-vocs/ and https://housefresh.com/air-purifier-technologies-activated-carbon-air-filter/
- verbatim: "Most cheap air purifiers come with just a carbon-impregnated fabric filter to remove VOCs that won't be enough for most."
- verbatim: "Most small to medium-sized air purifiers contain only a small amount of activated carbon, which will get saturated quickly when used in a room with high levels of gases or odors."
- verbatim: Levoit Core 400S: "The Original filter has 240g of carbon. The Pet Allergy and Toxin Absorber filter have 400g of carbon. Finally, the Smoke Remover filter comes with 450g of carbon."
- verbatim: Austin Air HealthMate "contains the largest amount of activated carbon you will find in a residential air purifier ( 15 lbs ). That said, in terms of particle removal, it will only be able to provide five air changes in spaces up to 234 sq. ft. with a PM1 CADR of 156 cfm."
- verbatim: AC Infinity CLOUDLINE S8 "comes with 16 lbs (or 7.2 kg) of activated carbon"; IQAir HealthPro Plus "5.5 lbs of activated carbon and KMnO4-impregnated alumina"; AirFanta 3Pro "600g (or 1.32 lbs) of activated carbon pellets"; Alen 75i Fresh filter "3.6 lbs (or 1.6kg)".
- Supports: thin sheets vs carbon beds; carbon mass varies with the filter variant, not only the machine; carbon-heavy units give up particle CADR. Confidence medium-high (with EPA and CR on the direction).

**HouseFresh, Corsi–Rosenthal Box review**
https://housefresh.com/corsi-rosenthal-box-review/
- verbatim: "Our air cleaning performance tests showed that this DIY air purifier was able to remove all PM1 pollutants as quickly as some $900 devices."
- verbatim: "Top speed PM1 CADR: 198 cfm"; noise "Speed 1: 49 dB Speed 2: 55.1 dB Speed 3: 60.7 dB".
- verbatim: "HEPA H13 is regularly touted as an important aspect of an air purifier, but the Corsi–Rosenthal Box can clean even the tiniest of particles with MERV-13."
- Supports: airflow over filter grade; the DIY fallback. Confidence medium-high.

**Wikipedia, Corsi–Rosenthal Box**
https://en.wikipedia.org/wiki/Corsi%E2%80%93Rosenthal_Box
- verbatim: "A 2022 study found the clean air delivery rate on the five-filter design was between 600 and 850 cubic feet (17–24 m3) per minute (depending on fan speed), while costing roughly a tenth of commercial air filters." The study is Dal Porto et al., Aerosol Science and Technology 56(6), 2022; medRxiv and Taylor & Francis would not load for me, so the figure is cited to Wikipedia's quote only and kept out of the JSON.
- verbatim: "A 2021 study by Underwriters Laboratories found that attaching filters to a box fan in a do-it-yourself configuration did not present a fire hazard".
- Supports: vocabulary entry only. Confidence medium.

### Brand spec sheets (what fields brands publish and in what order)

**Levoit Vital 200S-P** https://levoit.com/products/vital-200s-smart-true-hepa-air-purifier
- verbatim spec block, in this order: "Power Supply : 24V⎓ 2.5A", "Rated Power : 50W", "Ideal Room Size : 1862 ft2 (1 ACH) / 388 ft2 (4.8 ACH)", "CADR : 250 CFM", "Noise Level : 23–54dB", "Dimensions : 15.6 x 8.5 x 19.8 in". Bullet: "Changes the air in a 1862 ft2 room once per hour."
**Levoit Core 300-P** https://levoit.com/products/core300-p-air-purifier
- verbatim: "Rated Power : 56W", "Ideal Room Size : 1066 ft2 (1 ACH) / 222 ft2 (4.8 ACH)", "Weight : 7.9 lb / 3.6 kg", "Noise Level : 24–54.5dB", "CADR : 143 CFM".
**Levoit Core 400S-P** https://levoit.com/products/core-400s-p-smart-air-purifier
- verbatim: "Rated Power : 38W", "Ideal Room Size : 1718 ft2 (1 ACH) / 358 ft2 (4.8 ACH)", "Noise Level : 22–52dB", "CADR : 231 CFM".
**Levoit filter pages (Shopify product feed, levoit.com/products.json)**
- verbatim: Vital 200S-P replacement filter "$49.99", "Designed to last 6–12 months"; Vital 100 filter "$31.99", "another 6–8 months"; Core 300-P filter "$29.99"; Core 400S-P filter "$49.99", "With 10x more carbon than competing brands".
- Supports: brands list rated power, a room size at two ACH bases, CADR (smoke only), a noise range, dimensions. They do not list carbon mass, quiet CADR, or noise at the rated CADR as such. Levoit's 1 ACH coverage is exactly 4.8 times its 4.8 ACH coverage. Confidence high.

**Coway (cowaymega.com Shopify product feed)**
- verbatim: Airmega AP-1512HH: "maintains pure air in rooms up to 361 square feet"; the AP-1512HHC listing: "rooms up to 1,680 ft² (156 m²), the size of a typical bedroom"; AP-1512HHS: "purifying rooms up to 788 square feet, the size of a typical bedroom"; Mighty2: "refreshing expansive rooms up to 1,800 square feet in just one hour".
- verbatim: AP-1512HHC: "a HEPA filter with a lifespan of 1 year, and 2 deodorization carbon filters with a lifespan of 6 months each"; AP-1512HH: "a pre-filter, a deodorization filter, a HEPA filter, and a bipolar device"; filter set "$59.79".
- Supports: one brand quotes 361, 788, 1,680 and 1,800 sq ft for closely related machines, all called "a typical bedroom" in two cases. Confidence high.

**Austin Air HealthMate** https://austinair.com/products/healthmate/
- verbatim: "up to 15 lbs of activated carbon and Mineral-Based Filtration, the Austin Air HealthMate filter is built to last five years under normal residential conditions".
- Supports: second source for the 15 lb figure; carbon-heavy units have long filter life claims. Confidence high for the claim as the brand's.

### Retail listings (what data is already present)

Amazon pages fetched with curl (gzip) on 2026-10-19:

- **Levoit Core 300-P, B07VVK39F7** https://www.amazon.com/dp/B07VVK39F7 — title ends "AHAM VERIFIDE, Core300-P, Up to 1073 ft²". Bullet, verbatim: "a CADR (Clean Air Delivery Rate) rating of 143 CFM for smoke, 153 CFM for dust, and 167 CFM for pollen—refreshing air in a 222 ft² room 4.8 times per hour and a 1,073 ft² room once per hour". Product table, verbatim: "Filter Type | 3 in 1 Filtration", "Floor Area | 1073 square_feet", "Noise Level | 24 db", "Particle Retention Size | 0.3 micron", "Wattage | 56 watts". Note, verbatim: "CADR and Coverage area are calculated based on Levoit's Original Filters and are not applicable to other replacement filters." ENERGY STAR badge shown.
- **Winix 5500-2, B01D8DAYII** https://www.amazon.com/dp/B01D8DAYII — bullet, verbatim: "CADR rated for 360 sq. ft. room size." No CADR number in the visible text. Table, verbatim: "Filter Type | HEPA", "Floor Area | 360 square_feet", "Noise Level | 27.8 db", "Particle Retention Size | 0.01 micrometer", "Wattage | 70 watts", "Filter Class | HEPA, Carbon", "Specification Met | AHAM Certified, CARB Certified, Energy Star Certified, UL Certified". "When the room is darkened, the unit automatically activates Sleep Mode".
- **Coway AP-1512HH, B01728NLRG** https://www.amazon.com/Coway-AP-1512HH-Mighty-Purifier-White/dp/B01728NLRG — title "Up to 1,748ft²"; bullet "Designed to clean spaces up to 1,748 sq. ft. in 60 minutes"; "washable pre-filter, deodorization filter, Bipolar Device, and HEPA Filter"; "You can turn off the light for sleeping". Table, verbatim: "Filter Type | HEPA", "Floor Area | 361 square_feet", "Noise Level | 53.8 db", "Wattage | 77 watts". No CADR number.
- What this tells the scraper: Amazon's structured table reliably carries Filter Type, Floor Area, Noise Level, Particle Retention Size and Wattage (3 of 3). Floor Area is on mixed bases (1 ACH for Levoit, 4.8 ACH for Winix and Coway) and disagrees with the title on two of three. Noise Level is the quietest setting on two pages and the loudest on the third. CADR as a number appears in one of three. Carbon type (sheet or bed), carbon mass, ionizer status (only as a brand name: PlasmaWave, Bipolar Device) and filter life are not in the table. Walmart, Best Buy and Home Depot were not tried after Amazon worked; three listings is a small sample, so `listing` is claimed only for Filter Type and Wattage.

### Added after the blind check (all read from the downloaded text)

- HouseFresh Vital 200S review — verbatim: "Filter technology : | Bonded particle filter with a layer of pelleted activated carbon and a removable pre-filter"; "It has a bonded filter, so once the carbon runs out (which usually happens within 6 months), you'll have to replace the whole thing".
- HouseFresh Winix 5500-2 review — verbatim: "Improved activated carbon filter that uses pelleted carbon instead of the impregnated fabric we saw in the older Winix 5300-2"; "Speed 4: 53.46 watts"; "reached a maximum of 53.46 watts on its turbo speed with Plasmawave enabled". Amazon lists "Wattage | 70 watts".
- HouseFresh carbon roundup — verbatim: "Many cheap air purifiers include carbon, such as the Levoit Vital 200S and the Coway Airmega Mighty2. However, while these will be fine to deal with the mild odors created in a home, they will be unable to deal with major issues with VOCs and gasses"; "we will only recommend devices with large amounts of pelleted activated carbon". Its five recommended units carry 16 lb, 15 lb (carbon and zeolite), 5 to 5.5 lb (carbon and KMnO4 alumina), 3.74 lb and 3.6 lb (1.63 kg, Alen 75i Fresh filter); its "didn't make the cut" units carry 0.88 to 1.9 lb (400 to 900 g). Filter lifespans in its spec boxes: "12 months", "5 years", "4 years", "19 months", "12 – 15 months". The 1.6 kg line used for "heavy smells and fumes" is the lightest recommended unit; one source, flagged.
- Levoit store feed — verbatim: Vital 200S-P filter "Activated Carbon Layer: Reduces gases and odors (FSC-certified wood carbon)" (the same stage HouseFresh calls a pelleted layer); Core 300 replacement filter 2-pack "Recommended replacement every 6–8 months."; "Filters ship sealed to preserve service life—remove plastic packaging before use."
- ENERGY STAR feed, recomputed by model number: 247 rows, 191 distinct `model_number` values (the checker counted 190), median smoke CADR 161, 31 percent at 267 cfm or more, largest 577 cfm.
- CARB list rows: 7,857 Mechanical of 13,161 Mechanical-plus-Electronic rows, 59.7 percent. Rows repeat models across brand names, so this is a share of listings, not of models or sales.

### Could not reach
- Wirecutter (nytimes.com refuses the fetch tool; curl returned a 767-byte stub). Its method appears only in search summaries; nothing from it is cited.
- Smart Air (Cloudflare 403 for curl and the fetch tool). Its data posts on HEPA versus airflow are not cited; HouseFresh and the CR box sources fill that slot.
- r/AirPurifiers wiki (Reddit login wall for old.reddit JSON and HTML). The enthusiast slot is thin: HouseFresh is a specialist reviewer with a hobbyist voice; this gap is noted.
- AHAM Verifide directory (JavaScript app). The ENERGY STAR dataset and the HouseFresh Winix review stand in for per-model AHAM numbers.
- RTINGS (review bodies behind a membership wall).
- Dal Porto et al. 2022 (medRxiv and Taylor & Francis would not load).

## Data points used for derived metrics

**Coverage basis, from brand pages and listings**

| Model | Smoke CADR (cfm) | AHAM size (sq ft) | Size ÷ CADR | Other coverage claims |
|---|---|---|---|---|
| Levoit Vital 200S-P | 250 | 388 | 1.55 | 1,862 (1 ACH) |
| Levoit Core 300-P | 143 | 222 | 1.55 | 1,066 or 1,073 (1 ACH) |
| Levoit Core 400S-P | 231 | 358 | 1.55 | 1,718 (1 ACH); Amazon title 1,733 |
| Winix 5500-2 | 232 (HouseFresh) | 360 (Amazon) | 1.55 | none |
| Coway AP-1512HH | not stated on pages read | 361 | (233 implied) | 788, 1,680, 1,748, 810 (auto mode), 874 (30 min) |
| ENERGY STAR list, 247 rows (about 190 model numbers) | 31 to 577 | 48 to 894 | 1.538 to 1.559 | n/a |

Two independent confirmations of the 1.55 multiplier: the ENERGY STAR dataset (all 247 rows) and Levoit's own 4.8 ACH figures (three models). The 2/3 rule (×1.5) and the EPA table (×1.54, 65 cfm per 100 sq ft) are the same idea rounded differently.

**Quiet CADR, HouseFresh measured (PM1 method, 728 cu ft room)**

| Model | Top speed PM1 CADR | Sub-45 dBA PM1 CADR | Share kept |
|---|---|---|---|
| Levoit Vital 200S | 249 | 128 | 51% |
| Levoit Core 600S | 375 | 156 | 42% |
| Winix A231 | 148 | 67 | 45% |
| AirFanta 3Pro | 353 | 213 | 60% |
| Coway Airmega 100 | 148 | 115 | 78% |
| CleanAirKits Luggable XL | 260 | 260 | 100% |

All six from one tester, so the 42 to 100 percent spread stays in these notes; the JSON says only that quiet CADR "can be far below" the rated figure (EPA, CR, HouseFresh all say so in words).

**Noise, claimed vs measured**: Levoit claims 23 dB at the bottom of the Vital 200S range; HouseFresh measured 38.3 dB at speed 1 from 3 ft. Levoit states no distance, so this is a pointer, not a proof. Top speed: Levoit 54 dB, HouseFresh 57.7 dB.

**Rated CADR per nameplate watt**: Vital 200S 250 ÷ 50 = 5.0; Core 300-P 143 ÷ 56 = 2.6; Core 400S-P 231 ÷ 38 = 6.1; Winix 5500-2 232 ÷ 70 = 3.3 (232 ÷ 53.46 measured = 4.3). This is a ranking aid only. The federal and ENERGY STAR thresholds are IEF on measured PM2.5 CADR per watt including standby, so the shortcut is not compared with them (corrected after the blind check).

**Annual filter cost, worked examples (shortest stated life, HouseFresh method)**: Vital 200S-P $49.99 at 6 months = $100 a year; Coway AP-1512HH set $59.79 covering 12 months = $60 a year; Core 300-P $29.99 at 6 months (Levoit's Core 300 filter page: "Recommended replacement every 6–8 months") = $60 a year. The first draft said this life was not stated; it was, on the 2-pack page.

## Against the existing add-on schema

Add-on read: `machines/appliances/add-ons/air_purifier.jsonc` (`cadr {value, unit [cfm, m3_h, unspecified]}`, `hepa_grade_certified` boolean, `emits_ozone` enum [no_passive_filtration, yes_ionizing_stage, yes_intentional, unclear, unspecified], and a comment that stated coverage is intentionally omitted), composed with appliances-standard (`power.source/wattage/voltage`, `noise_db`, `smart.connectivity/voice_assistant`, `install_form`) and machines-standard (`high_signal_markdown`, `sizing.dimensions`, `sizing.weight`, `pieces_included_text`). Field kinds follow AGENTS.md rule 4: vertical anchor, quality currency, hard filter, sizing; everything else is `high_signal_markdown`.

| Facet in this register | In add-on today | Proposed kind under AGENTS.md | Note |
|---|---|---|---|
| cadr_smoke | yes, `cadr.value` + `cadr.unit` | quality currency | Keep, but pin it to the smoke (or PM2.5) figure. The add-on does not say which of the three AHAM numbers to store; listings print all three and brands pick the largest. Proposal: rename to `cadr_smoke_cfm` and convert m³/h at 1 cfm = 1.699 m³/h. ENERGY STAR v3 and the DOE standard now use PM2.5 CADR, which runs close to smoke (ENERGY STAR feed medians 167 and 161), so either works if the field says which. Willing to augment: brand page, AHAM directory, AHAM room size ÷ 1.55; the ENERGY STAR feed only on an exact retail SKU (of five named AHAM-rated models, only the Core 400S is in it). |
| noise_at_rated_cadr_db | partly, `noise_db` (appliances-standard) | quality currency, re-specified | `noise_db` is ambiguous: Amazon's Noise Level field is the quietest setting on two of three pages and the loudest on the third. Proposal: for this leaf, define it as dB at the speed that gives the rated CADR (top of the brand's range). Brand pages print the range, so augmentation is cheap. |
| quiet_cadr | no | outside schema (researched) | Only HouseFresh publishes it in cfm (PM1, its own 728 cu ft room). Top-N backfill into the high-signal markdown with the basis stated, not a column. CR publishes ratings, not cfm. |
| gas_filtration | no | hard filter (enum) | Proposal: `gas_capacity` enum [particles_only, everyday_smells, heavy_smells_and_fumes]: no carbon; carbon without a published mass of 1.6 kg or more; a separate carbon filter of 1.6 kg or more. Brand pages call light and heavy stages the same thing ("Activated Carbon Layer"), so heavy needs a mass from the brand or HouseFresh; most rows default to everyday_smells. |
| carbon_weight_g | no | high_signal_markdown | Rarely published, and it changes with the filter variant (240 g to 450 g across four Core 400S filters). Worth a sentence where known, not a column. |
| ionizing_stage | yes, `emits_ozone` | hard filter | Keep the field; rename to `ionizing_stage` and re-cut the enum to [mechanical_only, ionizer_switchable, ionizer_always_on, intentional_ozone]. "Emits ozone" overstates certified ionizers (ENERGY STAR feed: 0 to 5 ppb against a 50 ppb limit) and misses the switchable distinction buyers act on. CARB's Mechanical/Electronic flag per model is the cheap backfill. |
| filter_grade | yes, `hepa_grade_certified` boolean | demote to high_signal_markdown | Researched, not listing: Amazon's "HEPA" is the unverified claim itself, and "3 in 1 Filtration" maps to nothing. Map to HEPA only when the brand names a test. The boolean cannot hold the four states that matter (DOE/H13 HEPA, HEPA-type or HEPA-grade, E-class or MERV media, none), and the label is contested (Levoit dropped HEPA claims in 2023; 218 of 247 ENERGY STAR models self-report "HEPA-Type"). CADR already prices in filter efficiency. Not currency. |
| cadr_verification | no | high_signal_markdown | AGENTS.md rule 5 cuts certifications, and this register agrees: it changes trust in the CADR, not the filter set. A line in the markdown. |
| filter_life_months | no | high_signal_markdown | Feeds `annual_filter_cost`. Brand pages give ranges ("6–12 months"); store the shortest. |
| light_off_sleep | no | high_signal_markdown | Feature line. |
| (derived) largest_room_sq_ft, air_changes_per_hour, annual_filter_cost, cadr_per_watt | no | derived at query time | Not stored. |

**Stated room coverage: the add-on is right to omit it, with one refinement.** Evidence: Levoit prints two coverages for every model, at 1 ACH and at 4.8 ACH, a factor of exactly 4.8 apart (three models). Coway quotes 361, 788, 1,680, 1,748 and 1,800 sq ft for the Mighty family, two of them described as "a typical bedroom". Amazon's Floor Area field takes whichever basis the brand supplied (1,073 for Levoit, 361 for Coway, 360 for Winix), and two of three titles carry a third, larger figure. CR: "We've tested many air purifiers that aren't suitable for their claimed room sizes." So stated coverage is CADR divided by an undisclosed ACH assumption, exactly as the add-on comment says, and storing it would rank units by marketing. The refinement: when a listing labels the figure as AHAM or 4.8 ACH, it is a reliable way to backfill CADR (÷ 1.55; checked on Winix and the Levoit three), so the scraper should read it as an input to `cadr`, never store it as coverage.

**Add-on and standard fields this register considers noise for air purifiers**: `smart.voice_assistant` (no source treats it as a buying criterion); `install_form` (almost all portable units are freestanding; a photo answers the rest); `power.voltage` and `power.source` (every portable unit is corded at mains voltage; not an install gate here); the dust and pollen CADRs if stored separately (EPA: they track smoke within about 5 percent, and smoke is the conservative one). `power.wattage` is kept only as an input to `cadr_per_watt`, and it is nameplate, not measured draw (Winix 5500-2: 70 W nameplate, 53.46 W measured by HouseFresh). `sizing.weight` is fine (CR: 10 to 20 lb is typical, and it decides whether the unit moves between rooms).

## Branches (rewritten after the blind check, 2026-10-19)

Each branch names the sentence it follows from. Splits 1 (room size) and 3 (ionizer) have no branches: their answers move a floor or exclude a family, and no source says they change which other facets matter.

Answer-to-value rules, stated in the register:
- Split 1 (numeric): the top edge of the answered band sets the smoke CADR floor by the 2/3 rule (under 200 → up to 133 cfm; 200 to 400 → up to 267; over 400 → at least 267), refined by exact size if given (splits[0].rationale).
- Split 2 (ordinal): the question's three answers are the facet's three values, and an answer keeps units at that tier or above (splits[1].rationale: "Each answer keeps units at that tier or above").
- Split 3 (categorical): "filter only" = `mechanical only`; "ionizer fine" = every value except `intentional ozone generator` (ionizing_stage, definition).

**Split 2, gas_filtration ("Particles only, everyday smells, or heavy smells and fumes?")**

- when `heavy smells and fumes`: then_ask carbon_weight_g.
  - EPA guide: "Activated carbon filters can be effective, provided that there is a large amount of material used in the filter"; EPA technical summary: "the thicker the media, the more efficient the filter will be for longer periods of time"; carbon_weight_g, why experts care: "how much a filter holds decides how long it works before it fills". Every unit left on this leg has a large carbon filter, so mass is what separates them.
- when `everyday smells`: then_ask filter_life_months.
  - Chain of two stated facts: units at this tier mostly carry a carbon layer in the main filter (gas_filtration backfill note: "Carbon stated without a mass: everyday smells"), and light layers fill within months (filter_life_months, why experts care: "Light carbon layers fill faster: Consumer Reports says change carbon every three months, and HouseFresh found a Vital 200S's carbon ran out within six"; EPA: thin layers "can become quickly saturated"). So the replacement interval decides whether the smell control lasts. The old leg sent carbon-bed buyers to filter life on CR's general "every three months"; the blind check showed carbon-bed units are rated 12 months to five years, so the leg moved to the light tier.
- when `particles only`: makes_irrelevant carbon_weight_g.
  - A buyer with no gas need gains nothing from carbon mass; direct from the values.

**Removed: the bedroom split.** The question "Bedroom overnight, or living space while you're up?" was attached to the numeric `noise_at_rated_cadr_db`, with no sourced mapping from answer to decibels (HouseFresh draws its quiet line at 45 dBA, Consumer Reports at 50 dB), and its `when` labels were not facet values. Both legs are gone with it: bedroom → quiet_cadr, light_off_sleep, and living space → makes_irrelevant light_off_sleep (graded WEAK: argued from absence). The bedroom advice survives in the judgement on sizing up (now marked as disputed by AHAM), in quiet_cadr, and in light_off_sleep's own cold-start question.

## Numbers in the JSON with only one source

Kept, and flagged so a checker can look at them first:

- "Over 400 leaves about 31 percent of ENERGY STAR models" (splits[0].rationale) and "the median ENERGY STAR model is 161 cfm" (cadr_smoke range): my counts from the ENERGY STAR feed, deduplicated by model number (about 190 models). One dataset, read directly. The 161 sits inside EPA's "150 and 300 cfm" band.
- "about 60 percent of its certified listings" (splits[2].rationale): my count of CARB list rows; rows repeat models across brands.
- "1.6 kg or more" as the heavy-carbon line (gas_filtration): the lightest unit on HouseFresh's recommended list. One source; the register says so in the backfill note and judgement.
- "The biggest certified unit suits about 860 sq ft" (largest_room_sq_ft): 577 cfm, the largest in the ENERGY STAR feed, × 1.5.
- "Winix 5500-2 says 70 W, HouseFresh measured 53.46 W" (cadr_per_watt): one listing and one test, each for its own number.
- "218 of 247 self-report HEPA-Type filters" (energystar_dataset supports): same feed.
- "Consumer Reports says change them every three months" (filter_life_months): CR only, and attributed in the sentence. Coway's six-month carbon against a one-year HEPA is the second source for the direction (carbon wears out first), not for the number.

Removed from the JSON for having one source: HouseFresh's quiet-CADR shares (42 to 100 percent), carbon counts other than Austin's 15 lb, the "$900 units" comparison, ENERGY STAR's ozone readings of 0 to 5 ppb, ENERGY STAR's 394 kWh a year, AHAM's wildfire sizing (CADR equal to floor area), and the 600 to 850 cfm box-fan figure.

## Script problems

- Fixed upstream: the 390 px "200% text overflow" failure in `tests/viewer-browser.py` was the generator's `.search` min-width in `assets/viewer.css`, fixed in the skill by the coordinator. After the rebuild, viewer-browser.py passes at 1380, 768 and 390 px in light and dark.
- The flowchart "otherwise" edge on a numeric split no longer arises here, since the numeric bedroom split was removed; the generator behaviour itself is unchanged and untested by this register.
- The faint "Contents" and "How it works" headings under the sticky header no longer show in the new full-page screenshots (light or dark).
- Later generator fixes (prompted by bedsheets): wide flowcharts and mindmaps now open centred on the root, and map chips no longer break mid-word. Viewer rebuilt; the tree here fits its column, so nothing visible changed.
- validate.py, render.py and viewer.py ran without error.

## Trimmed detail

Sentences cut from capped fields that carried a fact, a number or a source:

- **summary**: "AHAM's label, the box seal with three CADR numbers and a room size" (in vocabulary). "Ionizers add little and some add ozone" (kept in ionizing_stage and judgements).
- **mechanism.plain**: the particle size ranges (smoke 0.09 to 1 µm, dust 0.5 to 3 µm, pollen 5 to 11 µm; Wikipedia and EPA technical summary). "Smoke CADR runs about 4 percent below dust and pollen about 5 percent above" (EPA technical summary). "The 2/3 rule assumes an 8 ft ceiling and aims for 80 percent removal of smoke particles at steady state" (Wikipedia; EPA technical summary says 80 percent reduction).
- **cadr_smoke.why_experts_care**: "Ionizer and PCO units commonly deliver under about 20 cfm" (EPA technical summary; single source, kept here). "AHAM recommends CADR equal to floor area for wildfire smoke" (AHAM blog twice; AHAM only, so not in the JSON).
- **quiet_cadr.why_experts_care**: the six-model HouseFresh table above.
- **carbon_weight_g.why_experts_care**: the HouseFresh carbon counts (240 to 450 g across Core 400S filters; 600 g AirFanta; 1.6 kg Alen; 2.3 to 2.5 kg IQAir; 7.2 kg AC Infinity). Single tester; kept here.
- **ionizing_stage.why_experts_care**: "With PlasmaWave on, the 5500-2 cleared HouseFresh's room in 23 minutes, off in 24" and "Coway removed the ionizer in the Mighty2 with no loss" (HouseFresh; kept in judgement 3 note in words, figures here).
- **splits[0].rationale**: "68 percent of ENERGY STAR models reach 133 cfm" (my count from the feed, rows not deduplicated; one dataset).

## Corrections after the blind check (2026-10-19)

1. Split 2 (bedroom, on numeric noise_at_rated_cadr_db) removed with both branches; noise_at_rated_cadr_db is now annotation and sort only, not novice-answerable, no cold-start question; "light sleeper" skip key gone with it.
2. ionizing_stage promoted to split 3 ("Filter only, or is an ionizer fine?") with a stated answer-to-value rule; rationale cites the CARB Mechanical share (about 60 percent of rows).
3. gas_filtration (now split 2) recut as ordinal, label "Gas and odour capacity", values particles only / everyday smells / heavy smells and fumes, which the question returns verbatim; heavy defined as a separate carbon filter of 1.6 kg or more (HouseFresh's lightest recommended unit, flagged single-source).
4. gas_filtration listing hint now says brands use "Activated Carbon Layer" for what HouseFresh calls pelleted; backfill cost medium → high, with a default rule (carbon without mass = everyday smells).
5. Gas branches rekeyed to the new values: heavy → carbon_weight_g; everyday → filter_life_months (moved from the carbon-bed leg); particles only → skip carbon_weight_g.
6. cadr_smoke backfill cost low → medium; ENERGY STAR feed only on an exact retail SKU; unknown-CADR handling stated (keep, mark unknown, rank below); unlabelled "CADR : 250 CFM" warning added; 12 × 15 ft example added to the definition.
7. Split 1 rationale: floors now 133 and 267 cfm, top band edge named as the floor, share corrected to 31 percent of deduplicated models; rooms beyond about 860 sq ft (largest unit 577 cfm) handled in largest_room_sq_ft with EPA's multiple-units advice.
8. cadr_verification: ENERGY STAR backfill route removed (it requires an AC-1 test, not Verifide); energystar_criteria cited for that.
9. cadr_per_watt relabelled "Rated CADR per nameplate watt"; comparison with the federal 2.9 and ENERGY STAR 5.6 removed; nameplate vs measured draw (70 W vs 53.46 W) added; ENERGY STAR v2 reference dropped as no longer cited.
10. Bedroom size-up judgement: sources_disagree true, confidence medium, AHAM's oversizing warning added to the note and evidence.
11. Trade-off 1 no longer cites aham_choose; it now states AHAM's opposing warning.
12. filter_grade: listing/none → researched/medium with a mapping (HEPA only when a test is named; listing "HEPA" → HEPA-type; brand phrases → unknown).
13. quiet_cadr: basis stated (HouseFresh PM1, 728 cu ft room); backfill restricted to HouseFresh; CR noted as ratings not cfm; quiet_air_changes flags the basis mismatch.
14. filter_life_months: faster wear restricted to light carbon layers (CR three months, HouseFresh Vital 200S within six); carbon-filter units rated 12 months to five years added.
15. Austin corrected to "up to 15 lb of carbon and mineral media" in carbon_weight_g, the trade-off and the reference.
16. annual_filter_cost: filter price marked researched (separate product page).
17. energystar_dataset: "247 rows, about 190 model numbers"; supports lines updated.
18. Judgement on carbon reworded to the new tiers; confidence high → medium because the 1.6 kg line is one source.
19. Summary: "thin sheet or a real bed" → "light layer or a large filter".
20. notes.md: Core 300-P filter life corrected (Levoit says 6 to 8 months); worked annual cost added; add-on table, branches, single-source list and script problems updated.

Rejected or partly rejected:
- "Source the bedroom → light_off mapping or drop it": dropped rather than sourced, along with the whole bedroom split, because no sourced answer-to-dB mapping exists (45 vs 50 dB).
- Checker's count of 190 model numbers: I get 191 distinct `model_number` values; the register says "about 190".

