Brevo plugin for WordPress - Connect your WordPress site with Brevo

The current documented plugin version is 3.3.0, compatible with WordPress 4.4 or higher (tested up to 6.8.3). If you are using another version of the plugin or WordPress, some features or settings may be missing or appear differently.
wordpress-logo.png

Download the Brevo plugin for WordPress

The Brevo plugin for WordPress lets you connect your site with Brevo and manage key features directly from your WordPress dashboard, including creating static or pop-up sign-up forms, syncing subscribers, and sending web push notifications.

About the Brevo plugin for WordPress

Learn more about the plugin’s features, use cases, and limitations in the following tabs:

Main featuresUse casesLimitations

This plugin allows you to:

Before you start

Before installing the Brevo plugin for WordPress, make sure you have:

Install the plugin

To install the Brevo plugin on your WordPress site:

  1. Log into the admin dashboard of your WordPress site.
    💡 Good to know
    To access admin dashboard of your WordPress site, enter your site URL in your browser, followed by /wp-admin (for example, the-green-yoga.com/wp-admin or the-green-yoga.wordpress.com/wp-admin).
  2. In the sidebar menu, go to Plugins > Add New Plugin.
    wordpress_add-new-plugin_en-us.png
  3. Search for Brevo.
  4. Next to the "Newsletter, SMTP, Email marketing and Subscribe forms by Brevo" plugin, click Install Now.
    wordpress_install-plugin_en-us.png
  5. Click Activate.
  6. In the sidebar menu, go to Brevo > Home.
    wordpress_brevo-home_en-us.png
  7. Under Activate your account with your API key v3, enter your Brevo API key. You can create an API key on the SMTP & API page in Brevo. To learn more, check our dedicated article Create and manage your API keys.
  8. Click Login.
    wordpress_api-key_en-us.png

You have successfully installed the Brevo plugin for WordPress and connected it with your Brevo account.

Sync your WordPress contacts to Brevo

Sync your WordPress users and subscribers to Brevo. This includes:

  1. Manually syncing existing contacts already stored in WordPress, and 
  2. Defining how new contacts are added to Brevo.

Step 1: Manually sync your existing WordPress contacts to Brevo

The initial sync of existing WordPress contacts (added before installing the plugin) must be done manually by selecting which user roles to sync to a specific Brevo list. If you want to sync different roles to different lists, you will need to repeat the process for each list.

To manually sync your existing WordPress contacts to Brevo:

  1. In the sidebar menu, go to Brevo > Home.
  2. Click Sync my users.
    wordpress_sync-my-users_en-us.png
  3. In the Users Synchronisation window, select:
    1. The user roles you want to sync.
    2. The Brevo list(s) where the contacts should be added.
    3. The user attributes you want to sync.
      💡 Good to know
      Only the fixed set of default WordPress user attributes available in the dropdown can be synced. Custom attributes are not supported.
      wordpress_users-synchronization_en-us.png
  4. Click Apply.
  5. Repeat the process to sync different roles to other lists.

Your existing contacts have been synced to Brevo.

Step 2: Sync your new WordPress contacts to Brevo

After syncing your existing contacts, configure how new WordPress contacts are added to Brevo. New contacts can be added to Brevo automatically based on how they interact with your site. 

There are two ways this can happen ⬇️:

A visitor submits a Brevo sign-up form

When a visitor submits a Brevo sign-up form on your WordPress site:

  • The contact is added to the selected Brevo list
  • All the information submitted in the form (for example, first name, last name, and email address) is saved in the contact's profile
  • The contact is subscribed to your emails

➡️ To learn more about adding a Brevo sign-up form on your WordPress site, check our dedicated section in this article.

❗️ Important
Only contacts who submit a Brevo sign-up form are synced. Third-party forms do not sync contacts to Brevo.
A visitor is identified by the Brevo tracker

When a visitor performs certain actions on your site, such as creating an account or placing an order, and is identified by the Brevo tracker:

  • The contact is added to the Brevo list named identified_contacts
  • Only the email address is synced to the contact’s profile
  • The contact is not subscribed to emails

➡️ To learn more about how to add the Brevo tracker on your WordPress site, check our dedicated section in this article.

❗️ Important
Do not send email campaigns to these contacts unless they explicitly subscribe through a Brevo sign-up form or another opt-in method.

Add a sign-up form to your WordPress site

Sign-up forms let visitors subscribe to your emails directly from your WordPress site. When a visitor submits a form, they are added to a list in Brevo and subscribed to receive your emails.

Using a sign-up form allows you to collect explicit opt-in consent and trigger automations based on form submissions.

Brevo offers two types of sign-up forms for WordPress: 

  • Static sign-up form
    A form embedded directly on a page or post. You can create it in Brevo or through the Brevo plugin for WordPress.
  • Pop-up sign-up form
    A responsive form displayed based on triggers, such as a delay, exit intent, or selected pages.

Static sign-up forms

A static sign-up form is a standard form that is permanently displayed on your WordPress site. You can embed it on a page, post, sidebar, or footer. Static forms are ideal if you want a visible and always-available subscription option.

You can create and add a static sign-up form to your WordPress site using one of the following methods:

  • [Recommended] Method 1: Create the form in Brevo
    Create the sign-up form directly in Brevo and embed it on your WordPress site using an iframe. This method helps avoid conflicts with WordPress themes or third-party plugins.
  • Method 2: Create the form using the Brevo plugin
    Create a static sign-up form through the Brevo plugin and embed it using a shortcode.

Use the following tabs to learn how each method works ⬇️:

Method 1: Create a static form in BrevoMethod 2: Create a static form through the Brevo plugin

Create a static sign-up form in Brevo and embed it as an iframe on your WordPress site:

  1. Create a static sign-up form in Brevo. To learn more, check our dedicated article Create a sign-up form in Brevo.
    wordpress_brevo-form-example_en-us.png
  2. At the Share step of the form creation process, copy the iframe code generated by the form builder.
    wordpress_form_share_copy-iframe_en-us.png
  3. In WordPress, create or open a page or post where you want to add your form.
  4. In the page or post, type /html on a new line and press Enter to add a new Custom HTML block.
    wordpress_form_html-block_en-us.png
  5. Paste the iframe code into the field.
    wordpress_form_html_paste-iframe_en-us.png
  6. (Optional) Click Preview to see how the form will appear on the page or post.
  7. Save and publish the page or post.

Pop-up sign-up forms

A pop-up sign-up form appears based on specific triggers, such as after a delay, on exit intent, or on selected pages. It helps capture attention without permanently displaying a form on the page.

To add a pop-up sign-up form to your WordPress site:

  1. Install the Brevo tracker on your WordPress site
  2. Create a pop-up sign-up form in Brevo. To learn more, check our dedicated article Create a pop-up sign-up form in Brevo.

popup_example_en-us.png

Use Brevo SMTP for your WordPress transactional emails

Using Brevo SMTP with the WordPress plugin lets you send transactional emails, such as password resets and comment notifications, directly through Brevo. This also allows you to authenticate your domain, which helps improve your reputation and reduces the chance that your emails will end up in spam.

To use Brevo SMTP for your WordPress transactional emails:

  1. In the sidebar menu, go to Brevo > Home.
  2. Under Transactional emails, select Yes to activate emails through Brevo. 
    ❗️ Important
    If you see the error message: "Unfortunately, your 'Transactional emails' are not activated because your Brevo SMTP account has not been activated", contact our support team by creating a ticket from your account to request activation of your SMTP account.
  3. Choose an existing sender or create a new one. All emails will be sent using this sender name and email address.
  4. Enter an email address to send a test email.
  5. Click Send email to receive your test email.

Install the Brevo tracker on your WordPress site

💡 Good to know
The Marketing Automation script contains the Brevo tracker. It was initially created to help you automate repetitive tasks, but can now be used for several purposes, such as identifying new contacts or tracking page views.

To install the Brevo tracker on your WordPress site:

  1. In the sidebar menu, go to Brevo > Home.
  2. Under Automation, select Yes to activate the Marketing Automation through Brevo option.
  3. Click Activate.

➡️ To learn more, check our FAQ article What is the Brevo tracker and how to install it?.

Send web push notifications

Push notifications are short messages that appear directly on a user's device, even when they're not on your website. They're a great way to re-engage visitors, share updates, and drive traffic back to your WordPress site in real time.

Step 1: Activate web push notifications

To send web push notifications to your website visitors, first activate the Web Push option through the plugin's settings:

  1. In the sidebar menu, go to Brevo > Home.
  2. Under Web push, click Activate.
    wordpress_web-push_activate2_en-us.png

Step 2: (Optional) Create new contacts in Brevo for each push subscriber

❗️ Important
Both anonymous and identified web push subscribers count toward the contact limit of your Brevo plan. To learn more, check our dedicated articles About anonymous contacts and About Brevo's pricing plans.

By default, you can only send push notifications from your website using the Brevo plugin for WordPress.

If you also want to target your web push subscribers through automations and campaigns in Brevo, you can choose to create a contact for them in Brevo when they subscribe. This applies to both anonymous and identified subscribers.

To create a new contact in Brevo for each push subscriber:

  1. In the WordPress sidebar, go to Brevo > Web push.
  2. From the Settings tab, click Advanced Settings.
    wordpress_push_advanced-settings_en-us.png
  3. Check the Create Brevo contacts from push notification subscribers option.
    wordpress_push_contact-creation_en-us.png
  4. Click Save.

When someone subscribes to web push notifications on your website, Brevo will now create a contact for them.

Step 3: Manage your default pressure settings

Pressure control helps you manage how and when push notifications are sent. It allows you to:

  • Control delivery speed to avoid sending too many notifications at once, which could overload your server.
  • Limit the number of notifications per user within a given timeframe (hourly, daily, or weekly).
💡 Good to know
Users can unsubscribe at any time, so avoid overwhelming them with too many notifications.

By default, users can receive up to 10 notifications per day. This limit applies to both blog notifications and push campaigns. You can adjust it and set a default delivery speed for your notifications.

  1. In the sidebar menu, go to Brevo > Web push.
  2. From the Settings tab, click Pressure settings.
    wordpress_push_pressure-settings_en-us.png
  3. Under Subscriber protection, change the default limit of notifications a user can receive. You can also create or update the limit by category.
    wordpress_push_pressure-settings_update_en-us.png
  4. Under Delivery speed, select the default delivery speed for your push notification.
  5. Click Save.
💡 Good to know

You can override the default pressure settings for individual push notifications and campaigns by selecting different settings when configuring the notifications.

Step 4: Send your push notifications

You can then choose to send two different types of push notifications:

  • Automatically notify subscribers when you publish a new blog post
  • Create and send a targeted web push campaign at the time of your choice

Use the following tabs to view instructions for each option ⬇️:

Notify for new blog post Send a targeted web push campaign

Automatically notify subscribers when you publish a new blog post, either for all posts or just specific ones. By default, notifications are sent to all your web push subscribers, but you can choose to target a specific audience instead.

Send a notification every time you publish a new blog post

  1. In the sidebar menu, go to Brevo > Web push.
  2. From the Settings tab, click Blog settings.
    wordpress_settings_blog-settings_en-us.png
  3. Make sure the Automatically send a notification when I publish a post from the WordPress editor option is activated.
  4. Under Who should we notify by default?, select the list or segment you want to send notifications to.
    wordpress_web-push_who-should-we-notify_en-us.png
  5. Click Save.
💡 Good to know

You can override the default audience for individual posts by selecting a different one when configuring the notification for that specific post.

Send a notification for individual blog posts

  1. In WordPress, open or create a blog post.
  2. In the Brevo Push Notifications section under your post content, make sure that the Send notification on post publish option is activated.
  3. (Optional) Select a different target audience to override your default blog settings for this post.
    wordpress_post_notification-settings_en-us.png
  4. Publish your post.

Deactivate web push notifications

To stop new subscriptions and prevent web push notifications from being sent, you can deactivate the Web Push option through the plugin's settings:

  1. In the sidebar menu, go to Brevo > Home.
  2. Under Web push, click Turn off web push.
    wordpress_push_deactivate_en-us.png
  3. Click OK.

Chat with your website visitors

Brevo Conversations lets you connect with your leads and customers in real-time on your website.

To install a chat widget on your WordPress site:

  1. Install the Brevo tracker on your WordPress site
  2. Log in to Brevo.
  3. Click the account dropdown and select Settings > Inbox.
  4. Next to Chat widget, click Set up.
  5. Click Install chat widget.
  6. Set up your chat widget and profile settings. To learn more about the customization of your chat widget or profile, check our dedicated articles Customize your chat widget appearance and Set up your chat profile.
  7. Click Add the chat widget to your website(s).
❗️ Important
The Conversations chat widget is automatically installed on all the websites on which you installed the Brevo tracker, regardless of the CMS used. If you wish to install Conversations on only one or some of your websites, use triggers to hide the chat widget on the other websites. To learn more, check our dedicated article Hide the chat widget on specific website pages.

Uninstall the plugin

❗️ Important
If you uninstall the WordPress plugin, all previously defined settings and created forms will be permanently lost and will need to be recreated. To prevent data loss, we recommend backing up your forms by copying their HTML code and taking screenshots of any settings you've configured before uninstalling the plugin.

If you no longer want to use the WordPress plugin or encounter issues with it, you may need to uninstall it.

  1. Log into the admin dashboard of your WordPress site.
    💡 Good to know
    To access the admin dashboard of your WordPress site, enter your site URL in your browser, followed by /wp-admin (for example, the-green-yoga.com/wp-admin or the-green-yoga.wordpress.com/wp-admin).
  2. In the sidebar menu, go to Plugins > Installed Plugins.
  3. Next to the Brevo plugin named "Newsletter, SMTP, Email marketing and Subscribe forms by Brevo", click Deactivate and Delete.

You have uninstalled the Brevo plugin from your WordPress site. To reinstall it, check our dedicated section in this article.

Troubleshoot issues with the plugin

If you are experiencing issues with the Brevo plugin for WordPress, we recommend you review the following troubleshooting tips before contacting our support team.

Select the issue that best matches your situation:

API key does not work

You cannot activate the Brevo plugin using your API key. You may see one of the following error messages:

  • "Please input a valid API v3 key"
  • "Unauthorized: Key not found"

Common causes and solutions

The API key was not copied correctly

If only part of the API key was copied or extra spaces were included, the plugin cannot be activated. 

Solution: Create a new API key in Brevo and use it to activate the plugin.

You are using an old API v2 key

The WordPress plugin only supports API v3 keys. API v2 keys are no longer supported. 

Solution: Create a new API key in Brevo and use it to activate the plugin.

You are using an SMTP key

The plugin requires an API key, not an SMTP key.

Solution: Create a new API key in Brevo and use it to activate the plugin.

The API key is inactive

Brevo automatically deactivates API keys after 90 days of inactivity

Solution: Reactivate your key in Brevo.

The API key was deleted

If the API key was deleted in Brevo, the plugin can no longer connect.

Solution: Create a new API key in Brevo and replace the deleted one in the plugin settings.

Verify the fix

After activating the plugin with the API key, confirm that your Brevo account information appears in the plugin dashboard:

wordpress_account-info_en-us.png

If the issue persists, contact our support team and include a screenshot of the error message.

Existing contacts are not synchronized to Brevo

Existing WordPress contacts are not syncing to Brevo when clicking Apply. You may see the following error message at the bottom-left of your screen: "javascript:void(0)".

Common cause and solution

A third-party WordPress plugin is conflicting with the Brevo plugin

Another WordPress plugin may cause a conflict. 

Solution: To identify the conflict, temporarily deactivate other WordPress plugins one at a time. After deactivating a plugin, try syncing your existing contacts again.

If the sync works, the last plugin you deactivated is likely causing the issue. If the sync still fails, reactivate the plugin and test a different one until you identify the conflicting plugin.

Verify the fix

In Brevo, go to Contacts and confirm that your WordPress contacts are now listed.

If you cannot identify the conflicting plugin, contact our support team. Include a list of your active plugins and a screenshot of the error.

Sign-up form is not displayed or displays incorrectly

💡 Good to know
Brevo’s support team can only assist with forms created in Brevo or through the plugin’s settings. For third-party forms, contact the support team of the platform used to create the form.

Your sign-up form does not appear on your website or it looks broken. You may see a white page with an error message when submitting the form.

Common causes and solutions

The HTML of a Brevo form was pasted directly into the plugin’s form builder

Pasting the HTML code of a Brevo form directly into the plugin’s form builder can break how the form is displayed.

Solution: Recreate the form in Brevo or through the plugin settings using one of the methods explained in this article.

You have made changes to the HTML code of the form

When editing the HTML code of a form created through the plugin's settings, do not modify the class attribute. 

The class attribute should keep its original format: sib-xxx-area (e.g., sib-email-area).

Default form (works) Modified form (does not work)
wordpress_form_class-sib_en-us.png wordpress_form_class-modified_en-us.png

Solution: Update the form with the correct class attribute, or recreate it from scratch as explained in this article.

A WordPress theme or third-party plugin is conflicting

Another WordPress plugin or your theme may cause a conflict. This usually happens if, after submitting a form created through the plugin’s settings, you are redirected to a blank white page showing this message:

{"status":"new","msg":{"successMsg":"Thank you, you have successfully registered !","errorMsg":"Something wrong occured","existMsg":"You have already registered","invalidMsg":"Your email address is invalid"},"redirect":""}

Solution: Temporarily deactivate other plugins one at a time. After deactivating a plugin, try submitting the form. If the issue persists, switch to a default WordPress theme and test the form again.

If the form works after a change, that plugin or your theme is likely causing the conflict. Reactivate all other plugins and your original theme after testing.

Verify the fix

Clear your website and browser cache. Reload the page where the form is displayed and submit the form using a test email address. Confirm that the form displays correctly and that the contact is added in Brevo.

If the issue persists, recreate the form using one of the methods explained in this article and add it again to your page, or contact our support team with screenshots and details of the steps you tried.

reCAPTCHA error occurs when submitting a form

💡 Good to know
Brevo’s support team can only assist with forms created in Brevo or through the plugin’s settings. For third-party forms, contact the support team of the platform used to create the form.

Your Brevo form with reCAPTCHA does not work, and you may see one of these errors when trying to subscribe:

  • "ERROR for site owner: Invalid domain for site key"
  • "ERROR for site owner: Invalid key type"

Common causes and solutions

Your website domain is not added to the allowed domains list (HTML share)

When sharing your form via HTML, your website domain must be included in the allowed domain list in your Google reCAPTCHA settings.

Solution: Verify if your reCAPTCHA is correctly configured as explained in our dedicated article Add a CAPTCHA to a sign-up form created in Brevo.

The domain sibforms.com is not added to the allowed domains list (Iframe share)

When sharing your form via Iframe, the domain sibforms.com must be included in the allowed domain list in your Google reCAPTCHA settings.

Solution: Verify if your reCAPTCHA is correctly configured as explained in our dedicated article Add a CAPTCHA to a sign-up form created in Brevo.

You are sharing the form using Simple HTML

Simple HTML does not support reCAPTCHA properly.

Solution: Share your form using Iframe or HTML instead of Simple HTML.

The reCAPTCHA type does not match

If the reCAPTCHA type configured in your Google reCAPTCHA settings (checkbox or invisible) does not match the type selected in your Brevo form, it will not work.

Solution: Verify the type of reCAPTCHA in your Google settings and update your Brevo form to use the same type (checkbox or invisible) as explained in our dedicated article Add a CAPTCHA to a sign-up form created in Brevo.

You are using the same reCAPTCHA key across multiple forms

Each form should have its own reCAPTCHA configuration. Reusing keys can cause errors.

Solution: Create a separate reCAPTCHA key for each form as explained in our dedicated article Add a CAPTCHA to a sign-up form created in Brevo.

Verify the fix

Open the form in an incognito window and submit a test subscription. Confirm the error no longer appears and the contact is saved in Brevo.

If the error persists, contact our support team and include the form URL, a screenshot of your Google reCAPTCHA domain settings, and a screenshot of the error message.

New contacts are not added after submitting a sign-up form

New contacts are not being added to your Brevo account after submitting a sign-up form on your WordPress site. You may notice one or more of the following behaviors:

  • The form submits successfully, but the contact does not appear in Brevo.
  • The form works for a few days and then stops adding contacts.
  • The form only works after clearing the website cache.
  • The form loads slowly or displays random errors.

Common causes and solutions

You are using a third-party form

Only forms created in Brevo or through the plugin’s settings can add contacts to Brevo. Forms created with third-party tools are not supported. 

Solution: Recreate the form in Brevo or through the plugin settings using one of the methods explained in this article.

You created a form through the plugin's settings and embedded it multiple times on the same page

Embedding the same form more than once on a single page can cause conflicts because the same HTML values are reused.

Solution: Recreate the form multiple times through the plugin’s settings and embed each version only once per page as explained in this article.

Other forms are embedded on the same page as a form created through the plugin's settings

Embedding other forms on the same page can conflict with your WordPress theme or other plugins.

Solution: Recreate the form through the plugin’s settings and embed it using an iframe as explained in this article.

The HTML of a Brevo form was pasted directly into the form builder of the plugin

Copying the HTML code of a Brevo form directly into the plugin’s form builder can break form functionality. 

Solution: Recreate the form in Brevo or through the plugin settings using one of the methods explained in this article.

Caching plugins are interfering with Brevo form parameters

Caching plugins, such as WP Rocket, can store or modify Brevo form parameters, which stops the plugin from processing submissions correctly.

Solution: Exclude Brevo form parameters from caching in your caching plugin settings and clear your website cache.

❗️ Important
Simply clearing the cache temporarily may allow the form to work, but the issue will return unless Brevo form parameters are excluded from caching.
A theme or plugin conflict is conflicting

Another WordPress plugin or your theme may interfere with forms created through the Brevo plugin, preventing submissions from reaching Brevo.

Solution: Temporarily deactivate other plugins one at a time. After deactivating a plugin, try submitting the form. If the issue persists, switch to a default WordPress theme and test the form again.

If the form works after a change, that plugin or theme is likely causing the conflict. Reactivate all other plugins and your original theme after testing.

Your Brevo account is suspended

If your Brevo account is suspended, the error message "We cannot accept this request as your account is blocked due to malicious behavior" is displayed when submitting your form.

Solution: Contact our support team and include a screenshot of the error message.

Verify the fix

Submit the form using a test email address and confirm that the contact appears in your Brevo contact list.

If the problem persists, contact our support team and include the form URL, the caching or optimization plugins in use (if applicable), and whether the issue is consistent or intermittent.

Brevo SMTP cannot be activated

Brevo SMTP cannot be activated in the WordPress plugin. You may see an error message when activation SMTP or when saving the plugin settings.

The transactional email platform is not activated in your Brevo account

If the transactional email platform is not activated in your Brevo account, you may see the following error message: "Unfortunately, your 'Transactional emails' are not activated because your Brevo SMTP account has not been activated". 

Solution: Contact our support team to request activation of the transactional email service.

There is a conflict with another third-party SMTP plugin

If another third-party SMTP plugin conflicts with the Brevo plugin, you may see the following error message: You cannot use SMTP because wp_mail has been declared by another process".

Solution: Temporarily deactivate other SMTP plugins one at a time. After deactivating a plugin, verify if the message still appears.

If the message no longer appears, the last plugin you deactivated is likely causing the conflict. Reactivate all other plugins after testing.

Verify the fix

Activate Brevo SMTP and send a test email. Verify that the email was received correctly.

If the problem persists, contact our support team and include the error message you see (if applicable).

Emails are not sent correctly through Brevo SMTP

Emails are sent through Brevo SMTP, but they are not delivered as expected. This may include incorrect sender details or delivery issues.

Emails are sent from the wrong sender

If emails are sent from the wrong sender, it may mean the original sender you selected was deleted from your Brevo account.

Solution: Re-create the sender in Brevo and select the newly created sender in the plugin settings.

Your domain is not authenticated

If the domain used in your sender's email address is not authenticated, it may result in delivery issues for your emails.

Solution: Authenticate your sender domain in Brevo.

Verify the fix

Send a test email from WordPress using Brevo SMTP and confirm that the sender name and email address are correct. Verify that the email is delivered successfully and not marked as spam.

If the issue continues, contact our support team and include the sender email address and the error details (if any).

⏭️ What's next?

🤔 Have a question?

If you have a question, feel free to contact our support team by creating a ticket from your account. If you don't have an account yet, you can contact us here.

If you’re looking for help with a project using Brevo, we can match you with the right certified Brevo Agency partner.

💬 Was this article helpful?

89 out of 171 found this helpful