For EU-facing forums, classifieds, business directories, membership communities, review sites and small marketplaces: any site that stores what its users post. Since 17 February 2024 you must take illegal-content notices electronically (Digital Services Act, Article 16), and small businesses are not exempt from it.
One payment, no subscription. For comparison: Gravity Forms, a general form builder, costs $59 to $259 per year (gravityforms.com/pricing, September 2026) and ships no DSA notice fields.
Article 16(4): when a notice includes an email address, you must send a confirmation of receipt without undue delay. The paid plugin sends it automatically; here you can copy it by hand.
A notice that contains all four Article 16(2) elements counts as giving you actual knowledge of that content (Article 16(3)). From that moment, your hosting liability shield holds only if you act expeditiously to remove or disable it (Article 6). Without a working notice mechanism, the breach itself can be fined up to 6% of annual worldwide turnover.
Why a free contact form is not enough: it does not ask for the four Article 16(2) elements and sends no Article 16(4) confirmation of receipt, so you cannot show that a notice was complete or that you answered it.
Free plugin, complete on its own: the 8-field notice form above on your site with one shortcode, name and email optional for child sexual abuse reports (Article 16(2)(c)), your point of contact and handling statement above the form, spam trap and nonce check, and every notice listed in WordPress admin, 50 per page.
Paid plugin ($60 once): confirmation of receipt emailed to each notifier with a copy of their notice · new notice emailed to your moderator · every notice as CSV with date and time · search notices by URL · a separate form per section (shortcode name attribute).
[dsa-notice-action-form] into a page called "Report illegal content" and link it from your footer.Menu names can differ slightly by WordPress version and admin language. Needs PHP 7.4 or newer. No other plugin is required. The plugin takes, logs and confirms notices; the decision on each notice stays yours.
This page is the working piece. The full pack has everything below.
Since 17 February 2024 every site that stores what its users post and serves the EU must take illegal-content notices electronically (Digital Services Act, Article 16); fines can reach 6% of
Gravity Forms, a general WordPress form builder, costs $59 to $259 per year (gravityforms.com/pricing, September 2026) and ships no Digital Services Act notice fields. Member States must set DSA fines of up to 6% of the provider's
Buy the full version — $60· ReadyStack
Real numbers from this tool, line by line.

If your site lets users post anything (forum threads, directory listings, classified ads, reviews, member profiles), the Digital Services Act treats you as a hosting service. Since 17 February 2024, Article 16 requires every hosting service serving the EU to run a notice and action mechanism: an easy, electronic way for anyone to report content they consider illegal. Small and micro businesses are not exempt. Article 19 spares them only the extra duties of online platforms, and Article 16 sits outside that section.
Article 16(2) lists four elements your form has to make possible: (a) a substantiated explanation of why the content is illegal, (b) the exact electronic location, such as the URL, (c) the name and email address of the person reporting, except for reports of child sexual abuse offences, and (d) a statement that the notice is accurate and complete, made in good faith. Article 16(3) adds the part that matters for your liability: a notice containing all four gives you actual knowledge of that content. From that moment, the hosting shield in Article 6 holds only if you act expeditiously.
Article 16(4) adds a second duty. If the notice contains an email address, you must send a confirmation of receipt without undue delay. Then, under Article 16(5), you tell the sender your decision and how to challenge it.
Here is the worked example our free web check computes. A brand owner reports a counterfeit handbag listing on a business directory. The notice has the URL, a two-sentence explanation naming the registered trade mark, the brand team's name and email, and the good-faith statement. Result: 4 of 4 elements. The directory now has actual knowledge, and a confirmation of receipt is due to that email.
Change one thing and the answer changes. Leave the good-faith statement at "Not confirmed" and the same notice drops to 3 of 4. It is incomplete, so the right move is to ask the sender to complete it. Now take an anonymous report in the child sexual abuse category with no name and no email. It still scores 4 of 4, because Article 16(2)(c) exempts those reports from giving a name. But no confirmation of receipt can go anywhere, and the check tells you so.
What does getting it wrong cost? Article 52(3) of the regulation makes Member States set fines of up to 6% of the provider's annual worldwide turnover. Type €2,000,000 into the check and the ceiling is €120,000. At €350,000 it is €21,000. Those are ceilings, not tariffs: national regulators set the actual fine within them. The number shows how large a missing form can get.
Why not a normal contact form? A contact form asks for a name, an email and a message. It does not ask for the exact URL as its own field, it has no good-faith statement, and it sends nothing back to the sender. When a notice arrives in a shared inbox, nobody can tell whether it was complete, when it came in, or whether anyone answered.
The plugin we built puts an eight-field notice form on your site with one shortcode. Name and email are optional so child sexual abuse reports can be anonymous, and your point of contact and handling statement are shown above the form. Every notice is listed in WordPress admin. The free plugin does that whole job. The paid version emails the Article 16(4) confirmation of receipt to each notifier, alerts your moderator, exports every notice with its arrival date and time to CSV, and lets you search notices by URL. Check one real notice from your own inbox in the free web check first.
It adds an illegal-content notice form to your WordPress site with one shortcode. The form asks for the four things Article 16(2) of the Digital Services Act lists: the exact URL, your reasons, your name and email, and a good-faith statement. Every notice is saved and listed in your WordPress admin, 50 per page.
Any site serving the EU that stores content its users post: forums, classifieds, business directories, membership communities, review sites and small marketplaces. Article 16 has applied to them since 17 February 2024. Small and micro businesses are not exempt from it; Article 19 only spares them the extra online-platform duties.
A contact form does not ask for the four Article 16(2) elements, so notices arrive incomplete and you cannot tell which ones gave you actual knowledge. It also sends no confirmation of receipt, which Article 16(4) requires whenever the notifier gives an email. The paid version sends that confirmation and exports a dated CSV record.
The free plugin works on its own. You get the eight-field notice form, optional name and email for child sexual abuse reports, your contact point and handling statement above the form, spam protection and the full notice list in admin. The free web page checks a notice against Article 16(2) and shows your fine ceiling.
It is $60 once, not a subscription. Gravity Forms, a general form builder, lists $59 to $259 every year and ships no Digital Services Act fields. On the other side, Article 52(3) lets Member States fine up to 6% of annual worldwide turnover: on €2,000,000 that is up to €120,000.
One question, answered by the person who built it. Your email only if you want the answer sent.