1. Home
  2. Migrations
  3. Complete Guide: Migrating from ActiveCampaign to Ontraport (Same AccessAlly Site)

Complete Guide: Migrating from ActiveCampaign to Ontraport (Same AccessAlly Site)

Complete Guide: Migrating from ActiveCampaign to Ontraport (Same AccessAlly Site)

📊 Migration Complexity: MEDIUM-HIGH
⏱️ Estimated Time: 6-8 hours (plus testing)
🛠️ Technical Level: Intermediate-Advanced
💰 Cost Impact: Ontraport typically costs more than ActiveCampaign ($79-$497/mo vs $29-$149/mo)

Why Migrate from ActiveCampaign to Ontraport?

Common reasons for migrating from ActiveCampaign to Ontraport:

  • More Powerful CRM: Ontraport has stronger built-in CRM features (deals, pipelines, business reporting)
  • Better Contact Management: Ontraport’s contact database more robust for complex businesses
  • Advanced Automation: More sophisticated campaign builder and conditional logic
  • Payment Gateway Integration: Ontraport has native payment processing (vs. ActiveCampaign requiring Stripe separately)
  • Business Growth: Your business needs Ontraport’s enterprise features
⚠️ Important Consideration: Ontraport has a steeper learning curve than ActiveCampaign. Budget time for team training. Also ensure Ontraport’s pricing tier fits your contact count and email volume.

What You’ll Need Before Starting

✅ Required Access & Accounts

  • WordPress admin access to your AccessAlly site
  • ActiveCampaign admin access (for data export)
  • Ontraport account access (must be set up and configured)
  • AccessAlly license that supports CRM switching
  • Access to your payment gateway (Stripe or PayPal)

📋 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 ActiveCampaign contact data
  • Audit of your current member count, tags, and custom fields
  • Data mapping spreadsheet (contacts, tags, custom fields, automations)
  • Staging site setup for testing (CRITICAL for CRM switches)
  • Request 2-site exception from AccessAlly support
  • Downtime plan and member communication
🚨 CRITICAL: Request 2-Site Exception
AccessAlly licenses are typically limited to one live site. You MUST request a temporary 2-site exception from AccessAlly support before setting up Ontraport on your staging site. This lets you test the migration without breaking your live site.

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

Step 1: Set Up Your Ontraport Account

If you haven’t already set up Ontraport:

  1. Sign up for Ontraport (choose appropriate tier for your contact count)
  2. Complete basic account setup (company info, timezone, sender email)
  3. Configure email deliverability (SPF, DKIM records)
  4. Test email sending (send yourself a test campaign)
  5. Create your first form and test it
💡 Pro Tip: Don’t import ANY contacts into Ontraport yet. Do all setup and configuration first, then import via AccessAlly Migration Wizard.

Step 2: Export Your Data from ActiveCampaign

  1. Log into your ActiveCampaign account
  2. Go to Contacts → Export
  3. Select “All Contacts”
  4. Choose “All Fields” (don’t filter)
  5. Select “Include Tags”
  6. Click Export
  7. ActiveCampaign will email you a CSV file
  8. Download and open the CSV

What’s included in the ActiveCampaign export:

  • Email addresses
  • First and last names
  • Phone numbers
  • Custom fields
  • Tags (in a single column, comma-separated)
  • Subscription status
  • Contact scores (if used)

What’s NOT included:

  • Automation workflows (must be rebuilt in Ontraport)
  • Deals and pipelines (must be recreated)
  • Email campaign history
  • Form designs
  • Site tracking data

Step 3: Map Your ActiveCampaign Data to Ontraport

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

ActiveCampaign Field Ontraport Field Notes
Email email Required field
First Name firstname Standard field
Last Name lastname Standard field
Phone office_phone or cell_phone Choose appropriate field
Tags Ontraport tags Recreate in Ontraport first
Custom Fields Ontraport custom fields (f1234) Note Ontraport’s f-number IDs
Contact Score lead_score Optional – may not map directly
⚠️ Ontraport Custom Field IDs: Ontraport uses field IDs like “f1234” for custom fields. You’ll need to create each custom field in Ontraport first, then note its field ID for the CSV import.

Step 4: Recreate Your Tags in Ontraport

  1. Make a list of all tags from your ActiveCampaign export
  2. Go to Ontraport → Contacts → Tags
  3. Create each tag in Ontraport
  4. Use the exact same tag names for easier mapping

Important tag notes:

  • Ontraport tags work similarly to ActiveCampaign (simple tag/untag)
  • Tag names are case-sensitive in both systems
  • Clean up unused tags during this process

Step 5: Create Custom Fields in Ontraport

  1. List all custom fields from ActiveCampaign
  2. Go to Ontraport → Contacts → Contact Information
  3. Click “Add Field” for each custom field
  4. Match field types (text, number, date, dropdown, etc.)
  5. CRITICAL: Note each field’s ID (e.g., “f1234”) for CSV mapping

ActiveCampaign → Ontraport field type mapping:

  • Text → Text
  • Textarea → Large Text
  • Number → Numeric
  • Date → Date
  • Dropdown → Drop Down or List Box
  • Checkbox → Check Box

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

🚨 DO THIS ON STAGING FIRST: Never switch CRMs on your live site without testing on staging. Request a 2-site exception from AccessAlly support.
  1. On your STAGING site, go to AccessAlly → Settings → General
  2. Under “CRM Integration,” change from ActiveCampaign to Ontraport
  3. Enter your Ontraport API credentials:
    • App ID (found in Ontraport → Administration → Integrations → API Instructions)
    • API Key (found in same location)
  4. Click Save and Test Connection
  5. Verify the connection is successful

Step 7: Prepare Your CSV for Migration Wizard

The AccessAlly Migration Wizard expects a specific format. Transform your ActiveCampaign export.

Required columns for AccessAlly + Ontraport import:

  • Email – Email address (required)
  • First Name – First name
  • Last Name – Last name
  • Tags – Comma-separated list of Ontraport tag names
  • f1234 – Custom field columns (use Ontraport field IDs)

CSV transformation steps:

  1. Open your ActiveCampaign export in Excel or Google Sheets
  2. Rename columns to match Ontraport format
  3. For custom fields, rename columns to Ontraport field IDs (e.g., “Member Level” → “f1234”)
  4. Ensure tags are comma-separated in one column
  5. Remove unsubscribed contacts (or handle separately)
  6. Save as new CSV: “activecampaign-to-ontraport-import.csv”
💡 Pro Tip: Test with a small batch (10-20 contacts) first to verify your CSV format and field mappings are correct.

Phase 2: Migration Execution (2-3 hours)

Step 8: Import Contacts via Migration Wizard

  1. On your STAGING site, go to AccessAlly → Migration Wizard
  2. If you don’t see Migration Wizard, download and activate the plugin (instructions)
  3. Click “Import from CSV”
  4. Upload your prepared CSV file
  5. Map CSV columns to Ontraport fields
  6. Choose import options:
    • Update existing users: Check if members may already exist in WordPress
    • Create users in CRM: Check (this creates contacts in Ontraport)
    • Add tags: Check (applies tags from CSV)
  7. Click “Start Import”

What happens during import:

  • WordPress user accounts created (if they don’t exist)
  • Contacts created in Ontraport
  • Tags applied in Ontraport
  • Contact ID from Ontraport stored in WordPress user meta
  • This Contact ID linking is CRITICAL for access control
⏱️ Time Estimate: Import processes ~100-200 contacts per minute. Monitor for errors.

Step 9: Update AccessAlly Tags and Access Rules

AccessAlly stores tag names from your old CRM. After switching to Ontraport, you need to update these.

  1. Go through each AccessAlly Module or protected page
  2. Check “Who Can Access” settings
  3. Verify tag names still match Ontraport tags
  4. Update any tag-based access rules
  5. Update membership levels to link to correct Ontraport tags

Critical areas to check:

  • Module access rules
  • Page protection settings
  • Order form tag assignments
  • Email wizard tag triggers
  • Automation trigger rules
🚨 CRITICAL: If tag names don’t match exactly (case-sensitive), members will lose access. Triple-check this step.

If you have paid members with active subscriptions, you need to ensure their Stripe/PayPal subscriptions are properly linked.

  1. Export active subscriptions from Stripe or PayPal
  2. Match subscription IDs to member email addresses
  3. In AccessAlly, go to each member’s profile
  4. Verify the subscription ID is stored correctly
  5. Test that failed payments will cancel access

Detailed guide: Preserving Subscriptions During Migration

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

Step 11: Rebuild Your Automations in Ontraport

ActiveCampaign automations cannot be automatically migrated. You must rebuild them in Ontraport.

Common ActiveCampaign automations to rebuild:

  • Welcome sequences: Use Ontraport campaigns
  • Tag-based automations: Use Ontraport rules and sequences
  • Purchase follow-ups: Set up in Ontraport campaigns
  • Lead scoring: Rebuild scoring rules in Ontraport
  • Site tracking triggers: Reconfigure in Ontraport

ActiveCampaign → Ontraport automation mapping:

ActiveCampaign Ontraport Equivalent
Automation Campaign or Sequence
Tag trigger Rule or Campaign trigger
Wait step Wait element in campaign
Conditional split Switch element
Goal reached Campaign goal
💡 Planning Tip: Document your ActiveCampaign automations BEFORE migrating. Export visual diagrams and list all triggers/actions. Ontraport’s campaign builder is different – budget extra time to learn it.

Step 12: Update Forms and Opt-ins

ActiveCampaign forms need to be replaced with Ontraport forms OR AccessAlly forms that submit to Ontraport.

Option 1: Use Ontraport Forms

  1. Create forms in Ontraport → Landing Pages → Forms
  2. Embed Ontraport form code on your WordPress pages
  3. Style forms to match your site
  4. Set up tag assignments and automation triggers

Option 2: Use AccessAlly Forms (Recommended)

  1. Create forms in AccessAlly → Opt-in Forms
  2. Configure to submit to Ontraport
  3. Better integration with WordPress/AccessAlly features
  4. More control over styling and behavior

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

Step 13: Test Everything on Staging

Before touching your live site, thoroughly test on staging:

  • ✅ Member login works
  • ✅ Content access rules work correctly
  • ✅ Tags control access properly
  • ✅ Forms submit to Ontraport
  • ✅ Purchase flow works end-to-end
  • ✅ Subscription linking works
  • ✅ Failed payment handling tested
  • ✅ Automations trigger correctly
  • ✅ Email sending works
💡 Pro Tip: Have a team member (not you) test the member experience. Fresh eyes catch issues you’ll miss.

Step 14: Switch Live Site to Ontraport

When staging tests pass, switch your live site:

  1. Schedule downtime (2-4 hour window recommended)
  2. Put site in maintenance mode
  3. Create fresh WordPress backup
  4. Export final ActiveCampaign data (capture any new contacts since staging)
  5. Switch AccessAlly to Ontraport (same steps as staging)
  6. Import any new contacts from final export
  7. Verify access rules and tags
  8. Test login for 3-5 members
  9. Take site out of maintenance mode
  10. Monitor closely for 1 hour

Step 15: Complete Post-Migration Checks

Work through the complete Post-Migration Verification Checklist. Key items for AC → Ontraport:

✅ Contact Data Integrity
  • Verify total contact count matches ActiveCampaign
  • Check 10 random contacts in Ontraport for complete data
  • Verify Contact IDs properly stored in WordPress
  • Check for duplicate contacts
✅ Access & Permissions
  • Test login as multiple member types
  • Verify access to protected content for each membership level
  • Check tag-based access rules work
  • Test content unlocking based on tags
✅ Tags & Custom Fields
  • Verify tags migrated correctly (sample 10 contacts)
  • Check custom fields populated in Ontraport
  • Test tag-based access rules
  • Verify tag assignment via forms
✅ Forms & Automations
  • Test each opt-in form submission
  • Verify form data reaches Ontraport
  • Test order form purchases
  • Confirm post-purchase automations fire in Ontraport
  • 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: Contact ID Verification
The #1 issue with CRM switches is Contact ID mismatches. Test this:

  1. Pick a random member from WordPress
  2. Check their user meta for “ontraport_contact_id”
  3. Search Ontraport for that Contact ID
  4. Verify it’s the correct contact
  5. Test that tagging them in Ontraport grants access in AccessAlly

If Contact IDs are wrong, members will lose access even if they have correct tags.

Step 16: Monitor for 7 Days

Don’t cancel ActiveCampaign immediately. Monitor for issues during the first week:

  • Day 1-2: Watch for immediate access issues, login problems
  • Day 3-5: Monitor form submissions and automation triggers
  • Day 6-7: Check subscription/payment handling

What to monitor:

  • Member support tickets (migration-related confusion?)
  • Login errors or access issues
  • Payment failures or subscription problems
  • Form submission success rates
  • Automation trigger verification

Step 17: Clean Up

Once migration is stable (7+ days):

  1. Disconnect ActiveCampaign from AccessAlly (remove API keys)
  2. Deactivate Migration Wizard plugin
  3. Export final ActiveCampaign data for records
  4. Downgrade or cancel ActiveCampaign (keep 30 days as safety net)
  5. Remove staging site’s 2-site exception (contact AccessAlly support)
  6. Update member documentation with any CRM-related changes

Troubleshooting Common Issues

Issue 1: Contact IDs Not Linking (CRITICAL)

Symptoms: Members have correct tags in Ontraport but can’t access content

Causes:

  • Contact ID not stored in WordPress user meta during import
  • Contact ID stored under wrong meta key
  • WordPress user exists but Ontraport contact doesn’t

Solution:

  1. Check WordPress user meta for “ontraport_contact_id” or “contact_id”
  2. If missing, re-import the user via Migration Wizard with “Update existing users” checked
  3. Verify the Contact ID in Ontraport matches the stored ID
  4. Test access after fixing Contact ID

Issue 2: Tags Not Controlling Access

Symptoms: Members have tags in Ontraport but content access doesn’t match

Causes:

  • Tag names in AccessAlly don’t match Ontraport exactly (case-sensitive)
  • Access rules reference old ActiveCampaign tag names
  • Contact ID linking issue (see Issue 1)

Solution:

  1. Go to AccessAlly module or page protection settings
  2. Check “Who Can Access” tag names
  3. Compare to exact tag names in Ontraport (case-sensitive!)
  4. Update tag names in AccessAlly to match Ontraport
  5. Test access again

Issue 3: Custom Fields Data Missing

Symptoms: Custom field data didn’t migrate from ActiveCampaign to Ontraport

Causes:

  • Custom fields not created in Ontraport before import
  • CSV column names don’t match Ontraport field IDs (f1234)
  • Field type mismatch (text in AC, number in Ontraport)

Solution:

  1. Verify custom fields exist in Ontraport
  2. Note exact field IDs (e.g., “f1234”)
  3. Update CSV with correct Ontraport field ID column names
  4. Re-import with “Update existing users” checked
  5. Check a few contacts to verify data populated

Issue 4: Forms Not Submitting to Ontraport

Symptoms: Form submissions not creating/updating contacts in Ontraport

Causes:

  • AccessAlly not properly connected to Ontraport
  • Form configured for old ActiveCampaign connection
  • Ontraport API rate limit reached
  • Form fields don’t match Ontraport field names/IDs

Solution:

  1. Verify AccessAlly → Ontraport connection still active
  2. Edit form settings in AccessAlly
  3. Ensure form is set to submit to Ontraport (not ActiveCampaign)
  4. Check field mappings match Ontraport field IDs
  5. Test form submission and verify in Ontraport

Issue 5: Subscription Payments Not Linked

Symptoms: Active subscribers showing as “no subscription” in AccessAlly

Causes:

  • Subscription IDs not properly transferred during migration
  • Email address mismatch between Stripe and WordPress
  • Subscription metadata not stored in Ontraport

Solution:

  1. Export active subscriptions from Stripe
  2. Match subscription IDs to WordPress user emails
  3. Manually update AccessAlly subscription data for each user
  4. Test failed payment handling for each subscription

Detailed guide: Preserving Subscriptions During Migration

Issue 6: All Members Lost Access After Migration

Symptoms: Every member getting “You don’t have permission” errors

Causes:

  • Contact IDs not linking (most common – see Issue 1)
  • Tag names changed during migration
  • AccessAlly connection to Ontraport broken
  • Membership level settings cleared

Solution:

  1. DON’T PANIC – this is fixable
  2. Check AccessAlly → Ontraport connection is active
  3. Pick one test member and troubleshoot their Contact ID (see Issue 1)
  4. Once you fix the root cause, it affects all members
  5. If you can’t fix quickly, consider rolling back to ActiveCampaign temporarily
🚨 Rollback Procedure:
If critical issues occur and you need to revert to ActiveCampaign:

  1. Change AccessAlly CRM connection back to ActiveCampaign
  2. Re-enter ActiveCampaign API credentials
  3. Verify connection works
  4. Test member access (should restore immediately)
  5. Contact AccessAlly support for migration assistance

Migration Timeline & Downtime

Total Time Estimate: 6-8 hours (plus 2-3 hours testing)

Phase Time Downtime Required?
Ontraport Account Setup 1-2 hours ❌ No
Data Export & Mapping 1-2 hours ❌ No
Tag/Field Recreation 1 hour ❌ No
Staging Site Setup & Test 2-3 hours ❌ No (staging only)
Live Site CRM Switch 1-2 hours ✅ Yes (REQUIRED)
Automation Rebuild 2-4 hours ❌ No (can do after)
Form Migration 1 hour ❌ No
Testing & Verification 2-3 hours ❌ No

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


Need Help?

Migration Support:

Related Guides:

🎯 Migration Success Checklist:

  • ✅ All contacts imported to Ontraport with correct data
  • ✅ Contact IDs properly linked in WordPress
  • ✅ 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
  • ✅ Forms submitting to Ontraport
  • ✅ Core automations rebuilt and tested
  • ✅ No critical support tickets after 7 days
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.