Home Assistant changed the way it groups integrations on 16 and 17 October 2026. A series of pull requests by Franck Nijhof added 28 categories with 64 subcategories to core and a categories key to the integration manifest, then filled that key in for every integration. On the evening of 17 October a new integrations page went live on home-assistant.io that browses by the new categories. The work is tracked in epic #143, opened on 16 October.
What was wrong with the old list
The epic does not mince words: the categories on the website did not help anyone find anything. Half of them were entity platforms such as "Binary sensor" and "Switch", which describe what Home Assistant creates, not what someone wants to connect. A quarter of all integrations had only those, so browsing could not lead to them at all.
The new set is named after what people look for: Climate, Energy, Lighting, Plugs & switches, Security & safety, Water, Pets, Garden & plants, Local services and so on. The larger ones have subcategories, for example Energy > Meters & monitoring. Names and descriptions live in core's translation strings, so they are translated along with the rest of the interface, and every category has an icon. Helpers came last as the 28th category, for the entities you create yourself, such as toggles, timers, schedules and template or statistics helpers. The pull request notes that Template alone runs in 38.5% of installations.
In the manifest
An integration lists one to three categories, each either a category or a category with a subcategory, and the first one is its primary category. Hassfest, the project's validation tool, checks every entry. Shelly was the reference example: primary category Plugs & switches, plus Lighting > Bulbs & lamps and Energy > Meters & monitoring. On 17 October one pull request added categories to 1,248 manifests. They were copied from the integration pages on the website, where they had been picked integration by integration. Entity, system and virtual integrations get none, and a virtual integration shows the categories of the integration it points to.
Custom integrations can use the same key, so the Marketplace can list them next to core integrations. For them an unknown category is only a warning, which means a category renamed or removed in core later will not break a custom repository.
What you can see now
The new page at home-assistant.io/integrations has a category sidebar, a separate page for each category and subcategory (for example /integrations/category/climate/), a Local or Cloud connection filter, and a search that counts category names, tolerates small typos and ignores accents like ü or ø. Old links such as /integrations/#climate redirect to the matching category page. A Technology filter is left for a follow-up.
Several tasks in the epic are still open: categories on an integration's page in the app, browsing the Marketplace by category, making categories mandatory for every integration, removing the old ha_category from the website and telling custom integration authors about the change. A category filter in the "Add integration" dialog is planned as a follow-up outside the epic. The core changes are on the development branch, so they belong to Home Assistant 2026.11.