This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

Campaign Monitor Synchronization


This plugin automatically creates and maintains a mailinglist on Campaign Monitor mirroring the list of WordPress users. Typically this plugin is useful when you have information (or functionality) on your website that is accessible for registered users only, and you want to send email updates about that information (or functionality) to those users alone.

Example use case

For instance, members can subscribe for events on your WordPress website, and you send out announcements to those members using CampaignMonitor. With this plugin you can maintain your list on WordPress, manage their permissions, and the list on Campaign Monitor will always be an exact copy.


This plugin performs a one-way synchronization from WordPress to Campaign Monitor. For instance, it will remove users from your Campaign Monitor list if they do not exist as users in WordPress. If this behavior is too strict for you, we recommend our other plugin Campaign Monitor Dual Registration .

  • Don’t use this plugin in combination with a subscription form that stores subscribers directly in the same CampaignMonitor list.
  • Also don’t modify the list in CampaignMonitor directly, thos e changes will be lost. The only exception is when people unsubscribe from the mailinglist, this will be stored in Campaign Monitor only, and can only be changed there.

Technical details

The Campaign Monitor Synchronization plugin checks every 15 minutes whether there has been changes in the user list on WordPress, without contacting Campaign Monitor.

Only if there has been a change, it compares the WordPress user table with the version on Campaign Monitor. This can also be forced by pressing “save and sync” on the plugin options page.

When there are differences only the modifications will be sent to Campaign Monitor in batches using its API. This way the plugin tries to minimise the number of external requests, while maintaining a reasonable level of synchronization.

When a user unsubscribes on the Campaign Monitor website, this will not be overwritten by the plugin, nor will this be stored back in the WordPress database.



  1. Register on and create a list. Don’t use an existing list, the data will be lost !
  2. In the list details click the link “change name/type”, there you will find the list ID, it is a 32 character hexadecimal string. Don’t use the list ID in the url!.
  3. Go to your account settings. There you will find the API key, it is also a 32 character hexadecimal string.
  4. On your wordpress website, upload to the /wp-content/plugins/ directory
  5. Activate the plugin through the ‘Plugins’ menu in WordPress
  6. In the plugin options, enter the list ID and API key.
  7. Select which fields you want to copy to Campaign Monitor. E-mail address will always be copied.


6 Febraayo, 2017
Looks like a must have if you’re using CM and WP. I would improve and assure his future compatibility by establishing a github repo and allowing pull requests. Any way … great job thank you.
Akhri dhammaan 3 dibu-eegis

Ka-qaybgalayaasha & Horumariyayaasha

“Campaign Monitor Synchronization” waa softiweer il furan. Dadka soo socda ayaa wax ku biiriyay kaabahan.




  • First commit


  • Handle subscriber lists with size >1000


  • Solve a conflict with other plugins using the CampaingMonitor API.


  • Several fixes.


  • Solve more conflicts with other plugins using the CampaingMonitor API.


  • Send multiple batches when batch size >1000


  • Fix some notices.


  • Fix subscribers import bug.


  • No fixes, just SVN troubles.


  • More detailed error output.


  • “Subscribe for newsletter” functionality.


  • Fix some update issues.


  • ‘Fields to hide’ list update.


  • New options page. User role export.


  • We removed the possibility to change the subscription state in the WP backend


  • Trigger autoresponder in CampaignMonitor is added