1. Home
  2. Migrations
  3. Migrating from AccessAlly Managed to ActiveCampaign

Migrating from AccessAlly Managed to ActiveCampaign

ARTICLE CONTENT:

Complete Guide: Upgrading from AccessAlly Managed Contacts to ActiveCampaign

📊 Migration Complexity: MEDIUM
⏱️ Estimated Time: 5-7 hours (plus testing)
🛠️ Technical Level: Intermediate
💰 Cost Impact: $0/month → $15-259/month (ActiveCampaign pricing) but eliminates SMTP plugin costs
📈 Migration Type: UPGRADE (No CRM → Full Marketing Automation Platform)

Why Migrate from AccessAlly Managed to ActiveCampaign?

This migration represents a significant platform UPGRADE. You’re moving from a no-CRM setup (WordPress users + AccessAlly tags) to a full-featured marketing automation platform.

Common reasons for upgrading:

  • Better Email Deliverability: ActiveCampaign’s email infrastructure far superior to WordPress SMTP (inbox placement rates 95%+ vs 70-80%)
  • Advanced Automation: ActiveCampaign’s visual automation builder more powerful than AccessAlly Email Wizards
  • Scalability: As your list grows beyond 5,000-10,000, managing contacts in WordPress becomes unwieldy
  • Site Tracking & Behavioral Marketing: ActiveCampaign tracks member behavior and triggers automations based on site visits
  • Lead Scoring: Automatically score prospects based on engagement
  • CRM Features: Built-in sales pipeline, deals, and contact management
  • Professional Emails: Move from WordPress emails (often flagged as spam) to dedicated email infrastructure
  • Eliminate SMTP Plugin Dependency: No more configuring WP Mail SMTP, Postmark, or SendGrid separately
⚠️ Cost Consideration: You’re moving from $0/month (no CRM) to $15-259/month for ActiveCampaign. However:

  • You may eliminate SMTP service costs ($10-100/month)
  • Better deliverability = higher email ROI
  • Advanced features may replace other tools you’re paying for
  • ActiveCampaign pricing scales with contact count (start small, grow over time)

What You’ll Need Before Starting

✅ Required Access & Accounts

  • WordPress admin access to your AccessAlly site
  • AccessAlly license (verify CRM switching is supported on your plan)
  • ActiveCampaign account (sign up and configure BEFORE migrating)
  • Access to your payment gateway (Stripe or PayPal)
  • Ability to export WordPress users (admin access required)

📋 Complete the Pre-Migration Checklist

Before proceeding, work through the complete Pre-Migration Checklist. Key items include:

  • Full backup of WordPress site and database
  • Export of all WordPress users (your “contacts” in AccessAlly Managed)
  • Audit of current member count and AccessAlly tags
  • Data mapping spreadsheet (WordPress user fields → ActiveCampaign fields)
  • Staging site setup for testing (HIGHLY RECOMMENDED for CRM switches)
  • Request 2-site exception from AccessAlly support (to test on staging)
  • Downtime plan and member communication strategy
🚨 CRITICAL: Request 2-Site Exception
You MUST test this migration on staging before touching your live site. Contact AccessAlly support to request a temporary 2-site exception so you can connect both staging and live sites during testing.

Phase 1: Pre-Migration Setup (2-3 hours)

Step 1: Set Up Your ActiveCampaign Account

Complete ActiveCampaign setup BEFORE starting migration:

  1. Sign up for ActiveCampaign (choose appropriate tier for your contact count)
  2. Complete account setup wizard:
    • Company information
    • Timezone settings
    • Default sender name and email
    • Business type and industry
  3. Configure email deliverability:
    • Add and verify your sending domain
    • Set up SPF and DKIM records (ActiveCampaign provides exact DNS records)
    • Complete domain authentication
  4. Send test emails to verify deliverability
  5. Create a test automation to familiarize yourself with the builder
💡 ActiveCampaign Onboarding Tip: ActiveCampaign offers free setup assistance. Take advantage of their onboarding call to learn the platform before migrating.

Step 2: Export Your WordPress Users (Your Current “Contacts”)

In AccessAlly Managed mode, your contacts are stored as WordPress users. Export them:

  1. Go to WordPress → Users → All Users
  2. Install the “Export Users to CSV” plugin (free)
  3. Go to Tools → Export Users to CSV
  4. Select fields to export:
    • user_email (required)
    • first_name
    • last_name
    • user_registered (signup date)
    • All user meta fields (this includes AccessAlly tags and custom fields)
  5. Click Export and download the CSV

What’s included in WordPress user export:

  • Email addresses
  • First and last names
  • WordPress user meta (custom fields)
  • AccessAlly tags (stored as user meta)
  • User registration dates

What’s NOT included:

  • Email sending history (WordPress doesn’t track this)
  • Email Wizard sequences (must be rebuilt in ActiveCampaign)
  • Automation triggers (must be recreated)

Step 3: Map WordPress Data to ActiveCampaign

Create a data mapping spreadsheet. Use the Data Mapping Reference Guide for complete details.

WordPress Field ActiveCampaign Field Notes
user_email email Required field
first_name first_name Standard field
last_name last_name Standard field
user_registered Custom field: “Member Since” Create as date field in AC
AccessAlly tags ActiveCampaign tags Recreate tags in AC first (flat structure)
WordPress user meta
(custom fields)
AC custom fields
(typed: text, number, date, etc.)
AC auto-creates but verify field types
💡 Data Mapping Advantage: ActiveCampaign’s custom fields are TYPED (text, number, date, dropdown). WordPress user meta is all text. You can now use proper field types for better segmentation and automations.

Step 4: Recreate Your Tags in ActiveCampaign

  1. Export a list of all AccessAlly tags currently in use:
    • Go to AccessAlly → Tags
    • Copy all tag names to a spreadsheet
  2. Go to ActiveCampaign → Lists → Tags
  3. Create each tag in ActiveCampaign
  4. IMPORTANT: Use the EXACT same tag names (case-sensitive) for seamless access rule migration

Tag structure comparison:

AccessAlly Managed ActiveCampaign
Flat tag structure (no categories) Flat tag structure (no categories)
Tags stored as WordPress user meta Tags stored in ActiveCampaign database
Simple tag/untag operations Simple tag/untag operations (same behavior)
💡 Simplification Opportunity: This migration is a great time to clean up your tag structure. Consolidate similar tags and eliminate ones you’re not actively using.

Step 5: Create Custom Fields in ActiveCampaign

  1. List all WordPress user meta fields (custom fields) from your export
  2. Go to ActiveCampaign → Lists → Fields
  3. For each custom field, create it in ActiveCampaign:
    • Choose appropriate field type (Text, Number, Date, Dropdown, etc.)
    • Use same field name for easier mapping
    • Set field options (required, visible in forms, etc.)

WordPress user meta → ActiveCampaign field type mapping:

  • Text data: Text field
  • Numbers (prices, counts): Number field (enables numeric filtering)
  • Dates (subscription start, birthday): Date field (enables date-based automations)
  • Yes/No values: Checkbox field
  • Multiple choice: Dropdown or Radio field

Step 6: Connect ActiveCampaign to AccessAlly (Staging Site First)

🚨 DO THIS ON STAGING FIRST: Never switch CRMs on your live site without testing. Request a 2-site exception from AccessAlly support.
  1. On your STAGING site, go to AccessAlly → Settings → General
  2. Under “CRM Integration,” change from “Managed Contacts (no CRM)” to “ActiveCampaign”
  3. Enter your ActiveCampaign API credentials:
    • Account URL (e.g., yourcompany.activehosted.com)
    • API Key (found in ActiveCampaign → Settings → Developer)
  4. Click Save and Test Connection
  5. Verify the connection is successful
💡 What Happens When You Switch: AccessAlly will now look for ActiveCampaign contact IDs instead of reading WordPress user meta directly. This is why Contact ID linking is CRITICAL.

Step 7: Prepare Your CSV for Migration Wizard

Transform your WordPress user export into Migration Wizard format:

Required columns:

  • Email – Email address (required)
  • First Name – First name
  • Last Name – Last name
  • Tags – Comma-separated list of ActiveCampaign tag names
  • Custom Field Name – One column per custom field (use AC field names)

CSV transformation steps:

  1. Open your WordPress user export in Excel or Google Sheets
  2. Rename columns:
    • user_emailEmail
    • first_nameFirst Name
    • last_nameLast Name
  3. Create a Tags column with comma-separated AccessAlly tags
  4. Format custom field columns to match ActiveCampaign field names
  5. Remove test users, admin accounts, and invalid email addresses
  6. Save as: “aa-managed-to-activecampaign-import.csv”
💡 Pro Tip: Start with a test batch of 10-20 contacts to verify your CSV format and field mappings are correct before importing your entire list.

Phase 2: Migration Execution (2-3 hours)

Step 8: Download and Activate the Migration Wizard Plugin

  1. Go to AccessAlly → Utilities
  2. Find “Migration Wizard Plugin”
  3. Click Download to get the plugin ZIP file
  4. Go to WordPress → Plugins → Add New → Upload Plugin
  5. Upload the Migration Wizard ZIP file
  6. Click Activate Plugin

Full guide: Using the AccessAlly Migration Wizard Plugin

Step 9: Import Contacts to ActiveCampaign via Migration Wizard

  1. On your STAGING site, go to AccessAlly → Migration Wizard
  2. Click “Import from CSV”
  3. Upload your prepared CSV file
  4. Map CSV columns to ActiveCampaign fields (should auto-detect if named correctly)
  5. Choose import options:
    • Create users in WordPress: Uncheck (users already exist)
    • Update existing users: Check (updates existing WordPress users)
    • Create contacts in CRM: Check (creates contacts in ActiveCampaign)
    • Add tags: Check (applies tags from CSV)
    • Send welcome email: Uncheck (members already exist)
  6. Click “Start Import”

What happens during import:

  • Contacts created in ActiveCampaign
  • Tags applied in ActiveCampaign
  • Custom fields populated in ActiveCampaign
  • CRITICAL: ActiveCampaign Contact ID stored in WordPress user meta
  • This Contact ID link is what connects WordPress users to ActiveCampaign contacts
⏱️ Time Estimate: Import processes ~100-200 contacts per minute. Monitor for errors (duplicate emails, invalid formats).

Step 10: Verify Contact ID Linking

The most critical part of this migration: verify WordPress users are linked to ActiveCampaign contacts.

  1. Pick a random WordPress user
  2. Go to WordPress → Users → [User Name] → Edit
  3. Scroll to AccessAlly Contact Information
  4. Verify you see an ActiveCampaign Contact ID (numeric ID)
  5. Go to ActiveCampaign and search for that Contact ID
  6. Verify it’s the correct contact (same email address)
  7. Repeat for 5-10 users to spot-check
🚨 CRITICAL: Contact ID Linking
If Contact IDs aren’t linked, AccessAlly can’t check ActiveCampaign for tags, and members will lose access. This is the #1 issue with CRM switches. Verify thoroughly.

Step 11: Update AccessAlly Access Rules (If Needed)

If you kept the same tag names, your access rules should work automatically. But verify:

  1. Go through each AccessAlly Module
  2. Check “Who Can Access” settings
  3. Verify tag names match ActiveCampaign tags exactly (case-sensitive)
  4. Update any tag-based access rules if tag names changed
  5. Check protected page access rules
  6. Verify membership level tag associations

If you have paid members with active subscriptions, link Stripe/PayPal subscriptions:

  1. Export active subscriptions from Stripe or PayPal
  2. Match subscription IDs to member email addresses
  3. In AccessAlly, verify each member’s subscription ID is stored correctly
  4. Test that failed payments will cancel access (critical for security)

Detailed guide: How to Migrate Subscription Payments

🚨 SECURITY ISSUE: If subscription links aren’t correct, failed payments won’t cancel member access. This is a revenue leak. Test thoroughly.

Step 13: Migrate Email Wizards to ActiveCampaign Automations

AccessAlly Email Wizards cannot be automatically migrated. Rebuild them as ActiveCampaign automations.

Email Wizard → ActiveCampaign automation mapping:

AccessAlly Email Wizard ActiveCampaign Automation
Tag-triggered email sequence Automation with “Tag Added” trigger
Time delays (send 3 days later) Wait steps in automation
Conditional emails (if has tag) If/Else blocks in automation
Remove tag action Remove tag action (same)
Add membership action Add tag action (membership tags)
💡 UPGRADE OPPORTUNITY: ActiveCampaign automations are MORE powerful than Email Wizards:

  • Behavioral triggers (visited page, clicked link, opened email)
  • Lead scoring based on engagement
  • Advanced splits and conditional logic
  • Goal-based automation (stop when member takes desired action)
  • CRM integration (create deals, move pipeline stages)

Take time to explore ActiveCampaign’s capabilities – you can build much more sophisticated sequences.

Step 14: Update Forms to Submit to ActiveCampaign

If you’re using AccessAlly opt-in forms or order forms, update them to submit to ActiveCampaign:

For opt-in forms:

  1. Go to AccessAlly → Opt-in Forms
  2. Edit each form
  3. Verify “CRM Integration” is set to ActiveCampaign
  4. Update tag assignments if tag names changed
  5. Test form submission and verify contact created in ActiveCampaign

For order forms:

  1. Go to AccessAlly → Order Forms
  2. Edit each order form
  3. Verify CRM integration points to ActiveCampaign
  4. Update post-purchase tag assignments
  5. Test purchase flow end-to-end

Phase 3: Testing and Go-Live (2-3 hours)

Step 15: Complete Staging Site Testing

Thoroughly test on staging before touching your live site:

✅ Contact Data Integrity
  • Verify total contact count in ActiveCampaign matches WordPress user count
  • Check 10 random contacts for complete data (names, tags, custom fields)
  • Verify Contact IDs properly linked (see Step 10)
  • Check for duplicate contacts in ActiveCampaign
✅ Access & Permissions
  • Test login as different membership levels (use incognito windows)
  • Verify access to protected content works correctly
  • Check each membership level unlocks correct modules
  • Test tag-based access rules
  • Verify content unlocking based on ActiveCampaign tags
✅ Tags & Custom Fields
  • Verify tags migrated correctly (sample 10 contacts in ActiveCampaign)
  • Check custom fields populated correctly
  • Test tag-based access rules
  • Verify tagging in ActiveCampaign grants access in AccessAlly
✅ Forms & Automations
  • Test each opt-in form submission
  • Verify form data reaches ActiveCampaign
  • Test order form purchases (use Stripe test mode)
  • Confirm post-purchase automations fire in ActiveCampaign
  • Test auto-login after purchase
✅ Subscriptions & Payments
  • Verify active subscriptions linked correctly
  • Test new purchase flow end-to-end
  • Test subscription cancellation
  • 🚨 CRITICAL: Test failed payment handling
  • Verify member access aligns with payment status
🚨 CRITICAL TEST: Failed Payment Handling
Test that failed payments correctly cancel member access:

  1. Create a test member with a test subscription
  2. Simulate a failed payment in Stripe test mode
  3. Verify AccessAlly removes member access
  4. Check that the subscription cancellation webhook fired correctly

If this doesn’t work, you have a security issue – members could keep access without paying.

Step 16: Switch Live Site to ActiveCampaign

Only after staging tests pass completely:

  1. Schedule downtime window (2-4 hours recommended)
  2. Communicate with members (announce scheduled maintenance)
  3. Put site in maintenance mode
  4. Create fresh WordPress backup
  5. Export final WordPress users (capture any new signups since staging test)
  6. Switch AccessAlly to ActiveCampaign (same steps as staging)
  7. Import any new users from final export
  8. Verify access rules and tags
  9. Test login for 3-5 members (different membership levels)
  10. Take site out of maintenance mode
  11. Monitor closely for 2-4 hours

Step 17: Complete Post-Migration Verification

Work through the complete Post-Migration Verification Checklist.

Pay special attention to:

  • Contact ID linking (verify for 10+ random users)
  • Email deliverability (send test campaigns to Gmail, Outlook, Yahoo)
  • Automation triggers (verify tag-based automations fire correctly)
  • Member support tickets (watch for access or login complaints)

Step 18: Monitor for 7 Days

Monitor closely during the first week after migration:

  • Day 1-2: Immediate access issues, login problems, Contact ID linking issues
  • Day 3-5: Email deliverability, automation triggers, form submissions
  • Day 6-7: Subscription/payment issues, ongoing automation performance

What to monitor:

  • Member support tickets (migration-related confusion?)
  • Email bounce rates and deliverability
  • Login errors or access issues
  • Payment failures or subscription problems
  • Form submission success rates
  • Automation completion rates

Step 19: Deactivate Migration Wizard Plugin

Once migration is complete and verified (7+ days stable):

  1. Go to WordPress → Plugins
  2. Find “AccessAlly Migration Wizard”
  3. Click Deactivate
  4. Click Delete to remove the plugin

The Migration Wizard is only needed during migration. Removing it reduces your plugin footprint.


Troubleshooting Common Issues

Issue 1: Members Have Tags in ActiveCampaign But Can’t Access Content

Symptoms: Members have correct tags in ActiveCampaign but getting “insufficient permissions” errors in WordPress

Causes:

  • Contact ID not linked properly (most common)
  • Tag names in AccessAlly don’t match ActiveCampaign exactly (case-sensitive)
  • AccessAlly still configured for “Managed Contacts” instead of ActiveCampaign

Solution:

  1. Verify AccessAlly is connected to ActiveCampaign (Settings → General)
  2. Check the member’s WordPress user meta for ActiveCampaign Contact ID
  3. If Contact ID missing, re-import the user via Migration Wizard
  4. Verify tag names in AccessAlly access rules match ActiveCampaign exactly
  5. Test access after fixing Contact ID

Issue 2: Email Deliverability Worse After Migration

Symptoms: Emails going to spam, low open rates, high bounce rates

Causes:

  • SPF/DKIM not configured correctly in ActiveCampaign
  • Sending domain not authenticated
  • Sending too many emails too quickly (need to warm up sending domain)
  • Email content triggering spam filters

Solution:

  1. Verify SPF and DKIM records in ActiveCampaign (Settings → Advanced → Domain Authentication)
  2. Complete domain authentication process
  3. Warm up your sending domain (start with small batches, increase gradually)
  4. Test email deliverability with Mail Tester (mail-tester.com)
  5. Review email content for spam trigger words
  6. Check sender reputation (use MXToolbox)
💡 Deliverability Should IMPROVE: ActiveCampaign’s email infrastructure is far superior to WordPress SMTP. If deliverability is worse, it’s a configuration issue, not a platform issue. Contact ActiveCampaign support for deliverability help.

Issue 3: Members Can’t Log In After Migration

Symptoms: Members getting “Invalid username or password” errors

Causes:

  • Members trying to log in with email instead of username (WordPress login behavior)
  • Browser cached old credentials
  • Password reset needed after migration

Solution:

  1. Remind members to use their WordPress username (not email) OR enable email login via plugin
  2. Have members clear browser cache and cookies
  3. Send password reset emails if needed
  4. Consider enabling “Login with Email” plugin for easier member experience

Issue 4: Automations Not Firing in ActiveCampaign

Symptoms: Tags applied in ActiveCampaign but automations don’t trigger

Causes:

  • Automation not set to “Active” status
  • Automation trigger doesn’t match how tags are being applied
  • Contact already went through automation (contacts only enter once by default)
  • Automation has goal that was already met

Solution:

  1. Check automation status (must be “Active”)
  2. Verify trigger settings (Tag Added vs Tag Present)
  3. Check automation settings for “Allow contacts to re-enter”
  4. Review automation goals (contacts exit when goal is met)
  5. Test with a fresh test contact

Issue 5: Custom Fields Not Populating in ActiveCampaign

Symptoms: Custom field data missing from ActiveCampaign contacts

Causes:

  • Custom fields not created in ActiveCampaign before import
  • CSV column names don’t match ActiveCampaign field names
  • Field type mismatch (text data in number field)
  • Special characters breaking import

Solution:

  1. Verify custom fields exist in ActiveCampaign (Lists → Fields)
  2. Check CSV column headers match field names exactly
  3. Verify data format matches field type (dates formatted correctly, numbers are numeric)
  4. Re-import with “Update existing contacts” enabled
  5. Check import log for error messages

Issue 6: Payment Webhooks Not Working

Symptoms: Purchases in Stripe/PayPal not triggering access in AccessAlly

Causes:

  • Webhook URLs need updating (changed from Managed Contacts to ActiveCampaign)
  • Webhook not configured in Stripe/PayPal
  • AccessAlly webhook handler not responding

Solution:

  1. Go to AccessAlly → Settings → Payment Gateway
  2. Copy the webhook URL
  3. Update webhook URL in Stripe or PayPal
  4. Test webhook delivery (Stripe has webhook testing tools)
  5. Check AccessAlly webhook logs for errors

Email Deliverability Comparison: Before vs After

Metric AccessAlly Managed
(WordPress SMTP)
ActiveCampaign
Inbox Placement Rate 70-80% (varies widely) 95%+ (industry-leading)
Email Infrastructure Shared hosting or SMTP plugin Dedicated email servers
IP Reputation Shared (affected by other sites) Monitored and protected
Spam Filtering Higher risk (WordPress emails often flagged) Lower risk (trusted sender)
Authentication Manual SPF/DKIM setup required Built-in, easy setup
Bounce Handling Manual or plugin-based Automatic bounce management
Unsubscribe Management Manual implementation required Built-in one-click unsubscribe
Email Tracking Limited or no tracking Full open/click tracking
💡 Expected Deliverability Improvement: Most customers see 15-25% increase in email open rates after switching to ActiveCampaign due to better inbox placement.

Cost Analysis: AccessAlly Managed vs ActiveCampaign

Contact Count AA Managed Cost ActiveCampaign Cost Net Change
500 contacts $0 CRM
+ $10-50/mo SMTP
$15/month
(no SMTP needed)
+$0 to +$15/mo
1,000 contacts $0 CRM
+ $20-75/mo SMTP
$49/month +$0 to +$29/mo
2,500 contacts $0 CRM
+ $50-100/mo SMTP
$79/month -$21 to +$29/mo
5,000 contacts $0 CRM
+ $75-150/mo SMTP
$149/month -$1 to +$74/mo
10,000 contacts $0 CRM
+ $100-200/mo SMTP
$259/month +$59 to +$159/mo

Cost considerations:

  • ActiveCampaign eliminates need for separate SMTP service (SendGrid, Postmark, etc.)
  • Better deliverability = higher email ROI (may offset cost increase)
  • Advanced automation features may replace other tools (Zapier, etc.)
  • CRM features may eliminate need for separate CRM tool
  • Time saved on email management has value

Migration Timeline & Downtime

Total Time Estimate: 5-7 hours (plus 2-3 hours testing)

Phase Tasks Time
Pre-Migration Setup ActiveCampaign account setup, domain authentication, tag/field creation, data mapping 2-3 hours
Data Export & Preparation Export WordPress users, transform CSV, prepare for import 1 hour
Staging Setup & Test Connect ActiveCampaign to staging, import contacts, verify Contact IDs, test access 2-3 hours
Live Site Switch Switch live site to ActiveCampaign, import final users, verify 1-2 hours
(DOWNTIME)
Automation Migration Rebuild Email Wizards as ActiveCampaign automations 2-4 hours
Form Updates Update opt-in and order forms to submit to ActiveCampaign 30-60 min
Testing & Verification Complete post-migration checklist, test all critical paths 2-3 hours

Recommended Downtime Window: 2-4 hours on a weekend or low-traffic period for live site switch

💡 Pro Tip: You can minimize downtime by completing all prep work (steps 1-7) in advance, then only putting your site in maintenance mode for the actual CRM switch (steps 8-10). Total downtime: 1-2 hours.

Need Help?

Migration Support:

Related Guides:

🎯 Migration Success Checklist:

  • ✅ All WordPress users imported to ActiveCampaign
  • ✅ Contact IDs properly linked in WordPress user meta
  • ✅ Tags and custom fields preserved
  • ✅ Member login working
  • ✅ Content access rules working correctly
  • ✅ Tag-based access tested and verified
  • ✅ Subscriptions linked and tested
  • ✅ Failed payment handling verified
  • ✅ Email deliverability improved (test inbox placement)
  • ✅ Forms submitting to ActiveCampaign
  • ✅ Core automations rebuilt and tested
  • ✅ No critical support tickets after 7 days
  • ✅ Email open rates improved (expect 15-25% increase)
Updated on January 15, 2026
Was this article helpful?

Related Articles

NO QUESTION GOES UNANSWERED

Live Weekly Q&A

Join us for live Q&A. Learn the basics, discover what's possible, and connect with AccessAlly users.

Need Support?

Have questions? Get in touch. Our inbox support hours are 9am-5pm EST, Monday - Friday.

Laptop with the AccessAlly demo site

AccessAlly is the most flexible way to sell and elegantly deliver digital offerings. All in one place.

WATCH THE DEMO

You'll get follow-up emails about AccessAlly and new features. Opt out anytime. Full privacy policy here.