Fluent Forms Integration
Fluent Forms is a popular WordPress form builder known for its performance and developer-friendly architecture. WP Smart Consent integrates with Fluent Forms to add an opt-in checkbox to any form on your site, with per-form configuration accessible directly inside the Fluent Forms editor.
Enabling the Integration#
In the WP Smart Consent dashboard, go to Form Sources and toggle Fluent Forms on. This activates the integration globally. Per-form behaviour is then configured individually inside each form’s editor.

Per-Form Settings#
WP Smart Consent adds a WP Smart Consent tab to every form inside the Fluent Forms editor. To access it, open any form in Fluent Forms → All Forms → Edit, then click the WP Smart Consent tab in the top navigation of the form settings panel. Settings are saved via AJAX so there is no full page reload — the Save Settings button always confirms success or reports the specific error, so it will not hang.
WP Smart Consent also appears on the Fluent Forms Integration Modules (Add-Ons) page, alongside the other Fluent Forms integrations. That listing is for discovery — per-form options are configured in the tab described here, and global on/off and destination settings live in the WP Smart Consent dashboard.
Form Type#
Contact form — WP Smart Consent injects a consent checkbox above the submit button. The checkbox is rendered using Fluent Forms’ own custom checkbox markup and class conventions so it inherits the form’s existing styling. Only submissions where the visitor ticked the checkbox are forwarded to your CRM destinations.
Newsletter form — no checkbox is injected. Every successful submission is treated as an opt-in and forwarded automatically. Use this for dedicated newsletter signup forms.
Collect Fields#
Map the form’s fields to standard WPSC data fields. The dropdowns are populated automatically from your form’s registered fields using Fluent Forms’ internal field attribute names.
Email — required. Select the field that contains the submitter’s email address.
First name, Last name, Phone, Company, Country — all optional. Map whichever fields you want forwarded alongside the email.
Fluent Forms field names in the dropdown correspond to the field’s name attribute as set in the form builder (for example first_name, phone_number, your_email). Subfield values like a Name field split into first and last are each listed separately.
Extra Fields#
Below the standard field selectors, the Extra fields section lets you map any additional Fluent Forms field to a custom CRM key. Add a row, select the form field on the left, and enter the CRM key on the right.
The CRM key is the identifier your destination platform uses for that field — for example CITY in Mailchimp, city in FluentCRM, or city as a HubSpot property. That key is sent alongside the standard contact data on every opt-in.
Submission Hook#
WP Smart Consent listens on the fluentform/submission_inserted action, which fires after Fluent Forms has validated and stored the submission in the database. Field values are read from Fluent Forms’ internal submission response object and matched by the field attribute names configured in the per-form settings.
Because Fluent Forms stores submissions before firing the hook, consent is only captured on genuinely successful submissions — validation failures and spam blocks do not trigger it.
In Contact mode the injected checkbox submits under the name wpsc_optin. Fluent Forms keeps only the fields it recognises from the form builder and discards everything else from the stored submission, so WP Smart Consent whitelists the consent checkbox through Fluent Forms’ fluentform/white_listed_fields filter to ensure its ticked/unticked state reaches the hook. A ticked box is logged as consented and forwarded to every enabled destination; an unticked box is logged as not consented and is not forwarded.
Troubleshooting#
Checkbox not appearing — confirm the form is enabled in the WP Smart Consent tab inside the form editor and set to Contact form mode (Newsletter mode does not inject a checkbox). Also confirm Fluent Forms is not using a custom rendering approach that bypasses the standard submit button hook.
WP Smart Consent tab not visible — if the tab does not appear in the Fluent Forms editor, confirm the Fluent Forms integration is toggled on in the WP Smart Consent dashboard and that the page has been refreshed after saving.
Settings not saving — the AJAX save requires the user to be logged in with the manage_options capability. The Save button reports any failure directly: if you see an error, note the HTTP status shown and check the browser Network tab for the admin-ajax.php request. A successful save shows the “Settings saved.” confirmation.
Consent always logged as not opted-in — resolved in 1.4.3.9.0. Fluent Forms previously stripped the injected consent checkbox from the stored submission, so a ticked box was recorded as not consented. Update WP Smart Consent if you still see this on an older build; the checkbox is now whitelisted so its state is preserved through to the submission hook.
Wrong field values forwarded — Fluent Forms field names use the attribute name, not the field label. If a field was renamed or re-keyed in the builder after mapping, re-open the WP Smart Consent tab and re-select the correct field from the dropdown.