Recreational boat safety equipment requirements by vessel length
Coast Guard rules on what safety gear a recreational boat must carry are not stated as one table -- personal flotation devices, portable fire extinguishers, and visual distress signals are each governed by a different subpart of 33 CFR Part 175, and each is triggered at a different length breakpoint (16, 26, 40, 65 feet). Getting this wrong is a citable offense during a boarding, and the probe run found search results dominated by marina blogs and boating-school pages rather than the regulation itself. Each record is one length band, stating exactly what each subpart requires at that band, quoted from the regulation. Answers 'how many fire extinguishers do I need on a 30-foot boat', 'do I need visual distress signals on a 14-foot boat', 'what size boat needs a throwable PFD'.
The data
| Vessel length band | Personal flotation device requirement | CFR section | Portable extinguishers required (no fixed system) | Portable extinguishers required (fixed system installed) | Condition or exception | Visual distress signal requirement |
|---|---|---|---|---|---|---|
| 16 feet or more in length | At least one wearable PFD on board for each person, plus one throwable PFD onboard in addition to the total number of wearable PFDs required | § 175.15 | ||||
| 16 or more, but less than 26 | § 175.320 (a)(1) | 1 | 0 | |||
| 26 or more, but less than 40 | § 175.320 (a)(1) | 2 | 1 | |||
| 40 or more, but not more than 65 | § 175.320 (a)(1) | 3 | 2 | |||
| 65 feet or less in length | § 175.320 (a)(1) | One 20-B portable fire extinguisher may be substituted for two 5-B portable fire extinguishers | ||||
| Canoes and kayaks 16 feet or more in length | Exempted from carriage of the additional throwable PFD required under § 175.15(b) | § 175.17 | ||||
| less than 16 feet in length | § 175.110 | Between sunset and sunrise, visual distress signals suitable for night use must be on board | ||||
| less than 26 feet in length | § 175.320(a)(1) | A vessel propelled by an outboard motor is not required to carry portable fire extinguishers if the construction of the vessel will not permit the entrapment of explosive or flammable gases or vapors | ||||
| more than 65 feet in length | § 175.320(b)(1) | Portable fire extinguishers are set by gross tonnage rather than length: 20-B portable fire extinguishers, 1 up to 50 gross tons, 2 above 50 up to 100, 3 above 100 up to 500, 6 above 500 up to 1,000, and 8 above 1,000 | ||||
| Under 16 | § 175.320 (a)(1) | 1 | 0 | |||
| under 26′ in length | § 175.115 | A sailboat of completely open construction, not equipped with propulsion machinery, need not comply with § 175.110, but must carry visual distress signals suitable for night use between sunset and sunrise |
Where this came from
Every record above links the page it was taken from and quotes the sentence that states it. These are the 3 sources this dataset was assembled from.
- ecfr.govhttps://www.ecfr.gov/current/title-33/chapter-I/subchapter-S/part-175/subpart-C
- ecfr.govhttps://www.ecfr.gov/current/title-33/chapter-I/subchapter-S/part-175/subpart-B
- ecfr.govhttps://www.ecfr.gov/current/title-33/chapter-I/subchapter-S/part-175/subpart-E
Machine-readable
- data.jsonThe whole dataset — every record with its source URL and source quote.
- Open Knowledge Format bundleOne JSON object per line — every record's frontmatter and quoted span exactly as it is held here, in one fetch.
- How this is made and checkedWhat "verified against source" does and does not mean.
From your own code
Same records, same quotes, without scraping the page: refsource is on PyPI and npm. Each value comes back carrying the URL it was read from and the sentence on that page that states it — .source and .quote sit on the value itself rather than in a side channel, so the checking step is available instead of skipped.
pip install refsource
refsource lookup recreational-boat-safety-equipment-requirements-by-length length_band="16 feet or more in length"
npx -y refsource lookup recreational-boat-safety-equipment-requirements-by-length length_band="16 feet or more in length"