A plugin or theme with code is a product Art. 3(1), Art. 2(1)
The CRA reaches products with digital elements made available on the market, which includes software the user installs. A CMS plugin, an app for a commerce platform, or a theme that ships executable code is installed into a site and almost always connects, so it fits the definition of a product with digital elements. Distributing it to EU users through a marketplace is supply on the Union market.
A theme that is purely static styling with no code is a weaker case, but the moment a theme or plugin carries logic, update mechanisms, or integrations, it behaves like the software product it is. Agencies and plugin shops that assumed this was outside their world are the common surprise here.
Free does not mean out of scope Art. 3(22), Recital 15
Making available on the market covers supply for distribution or use in the course of a commercial activity, in return for payment or free of charge. A free plugin that is part of your commercial activity is in scope just as a paid one is, so a large free tier does not put you outside the CRA by itself.
The recitals describe commercial activity broadly, including an intention to monetise, for instance through a platform through which the maker monetises other services. A free plugin whose purpose is to sell a paid upgrade, a subscription, or a hosted service is the paradigm case where "free" does not take you out.
Judgment call: The dividing line between a non-commercial free plugin and a free plugin that funnels paid services is a facts-and-intention judgment, not a bright-line rule.
The manufacturer programme and the dates Art. 13, Art. 3(2), Art. 71(2)
If your plugin, extension, or theme is in scope, you are its manufacturer. You build to the essential cybersecurity requirements, handle vulnerabilities during the support period (including a coordinated vulnerability disclosure policy), draw up technical documentation, run the conformity assessment, and affix the CE marking. Most plugins are default-category, so self-assessment is generally available.
Where the plugin depends on a backend you develop, that backend can come into scope with it as a remote data processing solution. Reporting duties start 11 September 2026 and the full obligations apply from 11 December 2027.