1. Home
  2. Migrations
  3. Migrating from Ontraport to ActiveCampaign

Migrating from Ontraport to ActiveCampaign

ARTICLE CONTENT:

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

📊 Migration Complexity: MEDIUM
⏱️ Estimated Time: 5-7 hours (plus testing)
🛠️ Technical Level: Intermediate
💰 Cost Impact: ActiveCampaign typically costs LESS than Ontraport ($29-$149/mo vs $79-$497/mo)
💡 Main Benefit: Cost reduction and easier automation management

Why Migrate from Ontraport to ActiveCampaign?

Common reasons for migrating from Ontraport to ActiveCampaign:

  • Cost Reduction: ActiveCampaign is significantly cheaper for most contact volumes
  • Easier Learning Curve: ActiveCampaign’s automation builder is more intuitive
  • Better Email Deliverability: ActiveCampaign consistently ranks high for inbox placement
  • Simplified Interface: Less overwhelming for non-technical users
  • Don’t Need CRM Features: If you’re not using Ontraport’s deals/pipeline features, you’re overpaying
  • Better Integrations: ActiveCampaign has more third-party app integrations
  • Site Tracking: ActiveCampaign excels at behavioral automation based on website activity
⚠️ Important Trade-offs: You’ll lose Ontraport’s built-in CRM features (deals, pipelines, business reporting). If you rely heavily on these, consider whether ActiveCampaign + a separate CRM tool would work, or if staying on Ontraport makes more sense.

What You’ll Need Before Starting

✅ Required Access & Accounts

  • WordPress admin access to your AccessAlly site
  • Ontraport admin access (for data export)
  • ActiveCampaign 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 Ontraport 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 ActiveCampaign on your staging site. This lets you test the migration without breaking your live site.

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

Step 1: Set Up Your ActiveCampaign Account

If you haven’t already set up ActiveCampaign:

  1. Sign up for ActiveCampaign (choose appropriate tier for your contact count and email volume)
  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 ActiveCampaign yet. Do all setup and configuration first, then import via AccessAlly Migration Wizard.

Step 2: Export Your Data from Ontraport

  1. Log into your Ontraport account
  2. Go to Contacts → Contacts
  3. Click the Actions button (top right)
  4. Select “Export”
  5. Choose “All Contacts” or create a filtered list if needed
  6. Select “All Fields” (don’t filter – you want everything)
  7. Choose CSV format
  8. Click Export
  9. Ontraport will process the export and email you a download link
  10. Download and open the CSV

What’s included in the Ontraport export:

  • Contact ID (Ontraport’s internal ID)
  • Email addresses
  • First and last names
  • Phone numbers
  • All custom fields (with field IDs like “f1234”)
  • Tags (in dedicated columns or comma-separated)
  • Subscription status
  • Lead scores
  • Date fields (created date, last modified, etc.)

What’s NOT included:

  • Campaign workflows (must be rebuilt in ActiveCampaign)
  • Deals and pipeline data (ActiveCampaign doesn’t have this)
  • Email campaign history
  • Landing page designs
  • Task/calendar data
  • Payment transaction history
⚠️ Ontraport Field IDs: Ontraport exports custom fields with IDs like “f1234” as column headers. You’ll need to create a mapping document to remember what each field ID represents (e.g., “f1234 = Member Level”, “f5678 = Phone Type”).

Step 3: Map Your Ontraport Data to ActiveCampaign

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

Ontraport Field ActiveCampaign Field Notes
email Email Required field
firstname First Name Standard field
lastname Last Name Standard field
office_phone / cell_phone Phone ActiveCampaign has single phone field
Ontraport tags Tags Recreate in ActiveCampaign first
f1234, f5678 (custom fields) AC custom fields Create matching fields in AC
lead_score Contact Score Optional – AC uses different scoring
💡 Simplification Opportunity: During migration, consider which Ontraport custom fields you actually use. ActiveCampaign’s simpler model may be an opportunity to consolidate and reduce complexity.

Step 4: Recreate Your Tags in ActiveCampaign

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

Important tag notes:

  • Ontraport → ActiveCampaign tag differences:
    • Both systems use simple tag/untag model (no hierarchy)
    • Tag names are case-sensitive in both systems
    • ActiveCampaign has no tag categories – all tags are flat
    • ActiveCampaign allows tag groups for organization (visual only, doesn’t affect functionality)
  • Clean up unused tags during this process – good opportunity to simplify
  • Consider renaming confusing tags to be more descriptive

Step 5: Create Custom Fields in ActiveCampaign

  1. List all Ontraport custom fields from your export (f1234, f5678, etc.)
  2. Document what each field ID represents
  3. Go to ActiveCampaign → Lists → (Any list) → Manage Fields
  4. Click “Add Custom Field” for each field
  5. Match field types (text, number, date, dropdown, etc.)
  6. Give fields descriptive names (don’t use f-numbers in AC)

Ontraport → ActiveCampaign field type mapping:

  • Text → Text
  • Large Text → Textarea
  • Numeric → Number
  • Date → Date
  • Drop Down / List Box → Dropdown (must define options)
  • Check Box → Checkbox
  • SMS → Text or Phone (AC handles SMS separately)
⚠️ ActiveCampaign Custom Field Creation: Unlike Ontraport’s f-number system, ActiveCampaign uses descriptive field names. Create fields BEFORE importing so you can map CSV columns correctly.

Step 6: Connect ActiveCampaign 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 Ontraport to ActiveCampaign
  3. Enter your ActiveCampaign API credentials:
    • API URL (found in ActiveCampaign → Settings → Developer → API Access)
    • 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 Ontraport export.

Required columns for AccessAlly + ActiveCampaign import:

  • Email – Email address (required)
  • First Name – First name
  • Last Name – Last name
  • Phone – Phone number (ActiveCampaign has single phone field)
  • Tags – Comma-separated list of ActiveCampaign tag names
  • [Custom Field Name] – Use ActiveCampaign field names, not Ontraport f-numbers

CSV transformation steps:

  1. Open your Ontraport export in Excel or Google Sheets
  2. Rename columns to match ActiveCampaign format:
    • emailEmail
    • firstnameFirst Name
    • lastnameLast Name
    • office_phone or cell_phonePhone
  3. For custom fields, rename Ontraport f-number columns to ActiveCampaign field names:
    • Example: f1234Member Level
    • Example: f5678Join Date
  4. Consolidate tags into a single column (comma-separated)
  5. Remove unsubscribed contacts (or handle separately)
  6. Remove Ontraport-specific columns you’re not migrating (Contact ID, lead scores, etc.)
  7. Save as new CSV: “ontraport-to-activecampaign-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 ActiveCampaign 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 ActiveCampaign)
    • Add tags: Check (applies tags from CSV)
    • Subscribe to list: Select your main ActiveCampaign list
  7. Click “Start Import”

What happens during import:

  • WordPress user accounts created (if they don’t exist)
  • Contacts created in ActiveCampaign
  • Tags applied in ActiveCampaign
  • Custom fields populated
  • Contacts added to your main ActiveCampaign list
  • Contact ID from ActiveCampaign 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 during import.

Step 9: Update AccessAlly Tags and Access Rules

AccessAlly stores tag names from your old CRM. After switching to ActiveCampaign, 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 ActiveCampaign tags
  4. Update any tag-based access rules
  5. Update membership levels to link to correct ActiveCampaign 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 ActiveCampaign

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

Common Ontraport campaigns to rebuild:

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

Ontraport → ActiveCampaign automation mapping:

Ontraport ActiveCampaign Equivalent
Campaign or Sequence Automation
Campaign trigger (tag, form, etc.) Automation start trigger
Wait element Wait action
Switch element (conditional) If/Else action
Campaign goal Goal (exits automation when reached)
Rules Automation with “Tag is added” trigger
💡 Good News: Many users find ActiveCampaign’s automation builder easier to use than Ontraport’s campaign builder. The visual interface is more intuitive, and the drag-and-drop actions make building flows faster.

Step 12: Update Forms and Opt-ins

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

Option 1: Use ActiveCampaign Forms

  1. Create forms in ActiveCampaign → Forms
  2. Embed ActiveCampaign 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 ActiveCampaign
  3. Better integration with WordPress/AccessAlly features
  4. More control over styling and behavior
  5. Can use AccessAlly’s conditional form logic

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 ActiveCampaign
  • ✅ Purchase flow works end-to-end
  • ✅ Subscription linking works
  • ✅ Failed payment handling tested
  • ✅ Automations trigger correctly
  • ✅ Email sending works
  • ✅ Custom field data populated correctly
💡 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 ActiveCampaign

When staging tests pass, switch your live site:

  1. Schedule downtime (2-3 hour window recommended)
  2. Put site in maintenance mode
  3. Create fresh WordPress backup
  4. Export final Ontraport data (capture any new contacts since staging)
  5. Switch AccessAlly to ActiveCampaign (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 Ontraport → ActiveCampaign:

✅ Contact Data Integrity
  • Verify total contact count matches Ontraport
  • Check 10 random contacts in ActiveCampaign for complete data
  • Verify Contact IDs properly stored in WordPress
  • Check for duplicate contacts
  • Verify custom fields populated correctly
✅ 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 ActiveCampaign
  • Test tag-based access rules
  • Verify tag assignment via forms
✅ Forms & Automations
  • Test each opt-in form submission
  • Verify form data reaches ActiveCampaign
  • Test order form purchases
  • 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: 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 “activecampaign_contact_id”
  3. Search ActiveCampaign for that Contact ID
  4. Verify it’s the correct contact
  5. Test that tagging them in ActiveCampaign 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 Ontraport 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
  • Email deliverability (check spam rates)

Step 17: Clean Up

Once migration is stable (7+ days):

  1. Disconnect Ontraport from AccessAlly (remove API keys)
  2. Deactivate Migration Wizard plugin
  3. Export final Ontraport data for records
  4. Downgrade or cancel Ontraport (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
  7. Celebrate cost savings! ActiveCampaign is typically 30-70% cheaper than Ontraport

Troubleshooting Common Issues

Issue 1: Contact IDs Not Linking (CRITICAL)

Symptoms: Members have correct tags in ActiveCampaign 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 ActiveCampaign contact doesn’t

Solution:

  1. Check WordPress user meta for “activecampaign_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 ActiveCampaign matches the stored ID
  4. Test access after fixing Contact ID

Issue 2: Tags Not Controlling Access

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

Causes:

  • Tag names in AccessAlly don’t match ActiveCampaign exactly (case-sensitive)
  • Access rules reference old Ontraport 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 ActiveCampaign (case-sensitive!)
  4. Update tag names in AccessAlly to match ActiveCampaign
  5. Test access again

Issue 3: Custom Fields Data Missing or Wrong Type

Symptoms: Custom field data didn’t migrate from Ontraport to ActiveCampaign, or shows incorrectly

Causes:

  • Custom fields not created in ActiveCampaign before import
  • CSV column names don’t match ActiveCampaign field names
  • Field type mismatch (Ontraport f-number numeric, ActiveCampaign text)
  • Ontraport multi-select fields don’t map to ActiveCampaign dropdowns

Solution:

  1. Verify custom fields exist in ActiveCampaign with correct types
  2. Update CSV with exact ActiveCampaign field names (not Ontraport f-numbers)
  3. For dropdowns, ensure values match ActiveCampaign dropdown options
  4. Re-import with “Update existing users” checked
  5. Check a few contacts to verify data populated correctly

Issue 4: Forms Not Submitting to ActiveCampaign

Symptoms: Form submissions not creating/updating contacts in ActiveCampaign

Causes:

  • AccessAlly not properly connected to ActiveCampaign
  • Form configured for old Ontraport connection
  • ActiveCampaign API rate limit reached
  • Form fields don’t match ActiveCampaign field names
  • No list selected in form settings

Solution:

  1. Verify AccessAlly → ActiveCampaign connection still active
  2. Edit form settings in AccessAlly
  3. Ensure form is set to submit to ActiveCampaign (not Ontraport)
  4. Check field mappings match ActiveCampaign field names
  5. Verify a list is selected for new contacts
  6. Test form submission and verify in ActiveCampaign

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 ActiveCampaign

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 ActiveCampaign broken
  • Membership level settings cleared
  • Forgot to select a list during import

Solution:

  1. DON’T PANIC – this is fixable
  2. Check AccessAlly → ActiveCampaign 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 Ontraport temporarily
🚨 Rollback Procedure:
If critical issues occur and you need to revert to Ontraport:

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

Issue 7: Ontraport CRM Features Missing in ActiveCampaign

Symptoms: Looking for Ontraport’s deals, pipelines, or business reporting features in ActiveCampaign

Cause: ActiveCampaign is primarily an email marketing automation platform, not a full CRM

Solution:

  • If you need CRM features, consider integrating ActiveCampaign with a CRM tool like:
    • HubSpot CRM (free tier available)
    • Pipedrive
    • Salesforce
  • Use ActiveCampaign’s “Deals” feature (limited CRM functionality)
  • Accept the trade-off: simpler tool, lower cost, but fewer CRM features

Ontraport-Specific Migration Considerations

Ontraport Field IDs (f1234) Must Be Mapped

Ontraport’s custom fields use IDs like “f1234”. During CSV preparation:

  • Document what each f-number represents
  • Create matching fields in ActiveCampaign with descriptive names
  • Rename CSV columns from f-numbers to ActiveCampaign field names
  • Double-check data types match (numeric, date, text, etc.)

Ontraport Campaigns → ActiveCampaign Automations

Ontraport’s campaign builder is more complex than ActiveCampaign’s automation builder:

  • ActiveCampaign automations are more linear (easier to understand)
  • Ontraport’s “Rules” concept maps to automation triggers in ActiveCampaign
  • Ontraport sequences = ActiveCampaign automations with wait steps
  • Budget extra time to learn ActiveCampaign’s interface

Cost Savings

ActiveCampaign is typically 30-70% cheaper than Ontraport:

Contact Count Ontraport Cost ActiveCampaign Cost Savings
1,000 contacts $79/mo $29/mo $600/year
2,500 contacts $147/mo $49/mo $1,176/year
10,000 contacts $297/mo $149/mo $1,776/year

The migration effort pays for itself in 3-6 months of cost savings.

Ontraport’s Advanced Features You’ll Lose

Be aware of what you’re giving up:

  • Built-in CRM: Deals, pipelines, opportunity tracking
  • Business Reporting: Ontraport’s analytics dashboard is more robust
  • Payment Processing: Ontraport has native payment forms (vs. Stripe integration)
  • Membership Sites: Ontraport has built-in membership features (less relevant since you’re using AccessAlly)
  • Task Management: Ontraport has built-in tasks and calendar

Most AccessAlly customers find these features redundant since AccessAlly handles membership site functionality.

Feature Comparison: Ontraport vs ActiveCampaign

To help you make an informed decision, here’s a detailed comparison:

Feature Ontraport ActiveCampaign Winner
Pricing $79-$497/mo $29-$149/mo ✅ ActiveCampaign
Email Deliverability Good Excellent ✅ ActiveCampaign
Automation Builder Complex, powerful Intuitive, visual ✅ ActiveCampaign (ease of use)
CRM Features Full CRM (deals, pipelines) Basic deals feature ✅ Ontraport
Learning Curve Steep Gentle ✅ ActiveCampaign
Site Tracking Good Excellent ✅ ActiveCampaign
Integrations 200+ 870+ ✅ ActiveCampaign
Payment Processing Built-in Via Stripe/PayPal ✅ Ontraport
Reporting Advanced business reporting Email/automation reports ✅ Ontraport
Support Quality Good Excellent ✅ ActiveCampaign

Summary: If you primarily need email marketing automation and don’t rely on Ontraport’s CRM features, ActiveCampaign offers better value, ease of use, and deliverability at a lower price point.


Real Customer Migration Stories

Case Study 1: Course Creator Cuts Costs by 60%

Background: Sarah ran an online course with 3,500 students on Ontraport. She was paying $197/month.

Pain Points:

  • Found Ontraport’s interface overwhelming
  • Wasn’t using CRM features (deals, pipelines)
  • Paying for features she didn’t need
  • Team members struggled with campaign builder

Migration Decision: Migrated to ActiveCampaign Plus ($79/mo for 3,500 contacts)

Results:

  • Cost savings: $118/month = $1,416/year
  • Team adopted ActiveCampaign faster (2 weeks vs 2 months with Ontraport)
  • Email open rates improved 12% (better deliverability)
  • Built more automations because the builder was easier to use
  • Migration took 6 hours over a weekend

Key Lesson: “I was intimidated by the migration, but it was smoother than expected. The cost savings paid for the time investment within 3 months, and my team is way more productive now.”

Case Study 2: Membership Site Simplifies Operations

Background: Mike ran a membership community with 1,200 members on Ontraport ($147/month).

Pain Points:

  • Ontraport’s complexity meant only he could manage campaigns
  • Wanted to hire a VA but training on Ontraport would take too long
  • Not using Ontraport’s payment forms (already using Stripe)
  • Ontraport’s custom field system (f-numbers) confusing for team

Migration Decision: Migrated to ActiveCampaign Plus ($49/mo for 1,200 contacts)

Results:

  • Cost savings: $98/month = $1,176/year
  • Hired VA who learned ActiveCampaign in 3 days
  • Simplified 14 custom fields down to 8 during migration
  • ActiveCampaign’s descriptive field names vs Ontraport’s f-numbers = less confusion
  • Site tracking features helped identify engaged vs inactive members

Key Lesson: “The migration forced me to clean up years of accumulated complexity. ActiveCampaign’s simpler model is actually a feature, not a limitation.”

Case Study 3: When NOT to Migrate

Background: Jessica ran a B2B coaching program with 800 contacts on Ontraport.

Why She Considered Migrating:

  • Cost savings potential
  • Heard ActiveCampaign was easier

Why She Stayed on Ontraport:

  • Heavily used Ontraport’s deals and pipeline features for client management
  • Had custom business reports built in Ontraport
  • Sales team would need to learn a new CRM (ActiveCampaign’s deals feature is basic)
  • Automation complexity required Ontraport’s advanced campaign features

Key Lesson: “I almost migrated to save money, but realized I’d need to add a separate CRM tool, which would negate the savings. If you’re using Ontraport’s full feature set, the price is justified.”


Advanced Migration Topics

Handling Multi-Product Access Control

If you have multiple products with different access levels:

  1. Audit your current tag structure in Ontraport
    • Document which tags grant access to which products
    • Identify any complex tag combinations (e.g., “Product A Level 2” + “Bonus Access”)
  2. Recreate exact tag structure in ActiveCampaign
    • Use tag groups to organize (visual only, doesn’t affect functionality)
    • Consider simplifying if your tag structure has grown too complex
  3. Test each product access level on staging
    • Create test users with different tag combinations
    • Verify each access level grants correct content
    • Test upgrade/downgrade scenarios
  4. Update purchase flows to apply correct tags
    • Verify order forms in AccessAlly apply correct ActiveCampaign tags
    • Test post-purchase automations in ActiveCampaign

Email Deliverability Considerations

Switching CRMs affects your email sending reputation. Follow these steps for smooth deliverability:

  1. Configure SPF and DKIM records for ActiveCampaign
    • Get DNS records from ActiveCampaign → Settings → Advanced
    • Add these to your domain registrar’s DNS settings
    • Wait 24-48 hours for DNS propagation
    • Verify records are live using ActiveCampaign’s DNS checker
  2. Warm up your sending domain (if high volume sender)
    • Start with smaller email batches (send to most engaged subscribers first)
    • Gradually increase volume over 2-3 weeks
    • Monitor bounce rates and spam complaints
    • ActiveCampaign has built-in delivery optimization
  3. Clean your list during migration
    • Remove unengaged subscribers (no opens in 6+ months)
    • Remove hard bounces and spam complaints
    • Consider a re-engagement campaign before migration
    • Better to migrate a smaller, engaged list than a large, unengaged one
  4. Monitor deliverability closely after migration
    • Watch ActiveCampaign’s delivery reports
    • Check spam folder placement (use Gmail/Outlook test accounts)
    • Address any deliverability issues immediately

Dealing with Complex Ontraport Campaigns

Ontraport’s campaign builder supports complex workflows. Here’s how to rebuild them in ActiveCampaign:

Scenario 1: Multi-Path Campaigns with Switch Elements

  • Ontraport approach: Single campaign with multiple switch elements based on custom fields
  • ActiveCampaign approach: Use If/Else actions with conditions based on custom fields
  • Pro tip: ActiveCampaign’s visual builder makes it easier to see all paths at once

Scenario 2: Campaign Rules That Fire on Multiple Triggers

  • Ontraport approach: Rules that trigger campaigns when tags are added, forms submitted, or dates reached
  • ActiveCampaign approach: Multiple automations with different start triggers, or use “OR” conditions in automation triggers
  • Pro tip: Sometimes splitting one complex Ontraport campaign into multiple focused ActiveCampaign automations is clearer

Scenario 3: Time-Based Campaigns with Goals

  • Ontraport approach: Campaign with wait elements and goals that exit the campaign when reached
  • ActiveCampaign approach: Automation with Wait actions and Goals that end the automation
  • Pro tip: ActiveCampaign’s goal system is nearly identical to Ontraport’s – this translates well

Managing the Data Migration Spreadsheet

A well-organized data mapping spreadsheet is critical for success. Here’s what to include:

Sheet 1: Custom Field Mapping

Ontraport Field ID Ontraport Field Name Field Type ActiveCampaign Field Name Still Needed? Notes
f1234 Member Level Text Member Level ✅ Yes Used for access control
f5678 Lead Source Dropdown Lead Source ❌ No Historical data, not actively used

Sheet 2: Tag Mapping

Ontraport Tag ActiveCampaign Tag Purpose Used in Access Rules?
Course Access Course Access Grants access to main course ✅ Yes – CRITICAL
Newsletter Subscriber Newsletter Subscriber Free newsletter list ❌ No

Sheet 3: Campaign/Automation Mapping

Ontraport Campaign Trigger Purpose AC Automation Name Status
Welcome Sequence Tag: New Member 5-email welcome series New Member Welcome ✅ Built
Cart Abandonment Form submitted, no purchase 3-email cart recovery Cart Abandonment Recovery ⏳ In Progress

Testing Checklist for Staging Site

Before switching your live site, complete this comprehensive testing checklist on staging:

Contact & Data Tests:

  • ✅ Total contact count in ActiveCampaign matches Ontraport export
  • ✅ Random sample of 20 contacts has all custom fields populated correctly
  • ✅ Tags applied correctly (check 10 random contacts)
  • ✅ No duplicate contacts in ActiveCampaign
  • ✅ Email addresses formatted correctly (no extra spaces or typos)

Access Control Tests:

  • ✅ Create test user, add “Course Access” tag, verify they can access course content
  • ✅ Remove “Course Access” tag, verify access is removed within 5 minutes
  • ✅ Test each membership level (Bronze, Silver, Gold, etc.)
  • ✅ Test upgrade scenario (Bronze → Gold) and verify new content unlocks
  • ✅ Test downgrade scenario and verify reduced access
  • ✅ Protected pages show correct “no access” message when tag missing

Form Tests:

  • ✅ Newsletter opt-in form creates contact in ActiveCampaign
  • ✅ Contact receives welcome email from ActiveCampaign automation
  • ✅ Order form purchase creates contact and applies correct tags
  • ✅ Post-purchase automation fires (check ActiveCampaign logs)
  • ✅ Free trial opt-in applies trial tag and triggers trial sequence

Purchase & Subscription Tests:

  • ✅ New purchase creates Stripe subscription
  • ✅ Subscription ID stored in WordPress user meta
  • ✅ Member has immediate access after purchase
  • ✅ Simulate failed payment in Stripe test mode
  • ✅ Verify failed payment removes access within expected timeframe
  • ✅ Verify failed payment sends dunning emails
  • ✅ Subscription cancellation removes access correctly

Automation Tests:

  • ✅ Welcome automation fires when tag is added
  • ✅ Wait steps in automation respect time delays
  • ✅ If/Else conditions route contacts correctly
  • ✅ Goal-based exit works when contact reaches goal
  • ✅ Tag removal stops automation (if configured)

Email Deliverability Tests:

  • ✅ Test email lands in Gmail inbox (not spam)
  • ✅ Test email lands in Outlook inbox
  • ✅ Unsubscribe link works correctly
  • ✅ From name and reply-to address are correct
  • ✅ Email formatting looks correct on mobile

Integration Tests:

  • ✅ Stripe webhook fires when subscription status changes
  • ✅ PayPal webhook fires (if using PayPal)
  • ✅ AccessAlly receives webhook and updates member access
  • ✅ Any third-party tools (Zapier, etc.) still work with new ActiveCampaign connection
💡 Testing Pro Tip: Create a “Migration Test Plan” document and check off each item as you test. Save this document – you’ll use it again when testing on the live site.

Migration Timeline & Downtime

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

Phase Time Downtime Required?
ActiveCampaign Account Setup 1 hour ❌ No
Data Export & Mapping 1-2 hours ❌ No
CSV Preparation (f-numbers → AC fields) 1 hour ❌ No
Tag/Field Recreation 30 min – 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-3 hours ❌ No (can do after)
Form Migration 1 hour ❌ No
Testing & Verification 2-3 hours ❌ No

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


Frequently Asked Questions (FAQ)

Q: Will I lose my historical contact data during migration?

A: No. All contact data (names, emails, custom fields, tags) migrates from Ontraport to ActiveCampaign. However, certain Ontraport-specific data doesn’t transfer:

  • Email campaign history and open/click data
  • Deals and pipeline data
  • Task and calendar events
  • Payment transaction history (export from Ontraport separately for records)
  • Landing page designs

Export this historical data from Ontraport for your records before canceling. Contact information and tags are the critical items for AccessAlly, and both migrate successfully.

Q: How long does the actual migration take?

A: Total project time: 5-7 hours spread across multiple days. Actual site downtime: 2-3 hours when you switch the live site. Here’s the realistic timeline:

  • Day 1 (2-3 hours): ActiveCampaign account setup, data export from Ontraport, data mapping spreadsheet
  • Day 2 (2-3 hours): Recreate tags and fields in ActiveCampaign, prepare CSV, set up staging site
  • Day 3 (1-2 hours): Import contacts to staging, test access control
  • Day 4 (2-3 hours): Rebuild critical automations, comprehensive staging testing
  • Day 5 (2-3 hours): Live site switch (DOWNTIME), verification, monitoring

Most customers spread this work over 5-7 days, working 1-2 hours per day. Don’t rush – thorough preparation prevents problems.

Q: What happens to my current members during the switch?

A: If you test properly on staging first, members shouldn’t notice anything. Here’s what happens:

  • Before switch: Members access content via Ontraport tags
  • During switch (downtime): Site in maintenance mode, no member access for 2-3 hours
  • After switch: Members access content via ActiveCampaign tags (same tag names)

Members don’t need to log in again or update anything. Their WordPress accounts remain unchanged. The only change is which CRM system AccessAlly checks for tags.

Q: Can I migrate gradually (some contacts at a time)?

A: Not recommended for AccessAlly sites. CRM switching is an “all at once” operation because:

  • AccessAlly can only connect to ONE CRM at a time (either Ontraport OR ActiveCampaign)
  • Partial migrations create confusion about which contacts are in which system
  • Access control fails if some members are in Ontraport and others in ActiveCampaign

The correct approach: Test everything on staging, then switch the entire live site at once during a scheduled downtime window.

Q: What if something goes wrong during migration?

A: This is why staging site testing is mandatory. If problems occur on staging, you fix them without affecting your live site. If critical issues occur on the live site:

  1. Immediate rollback: Change AccessAlly back to Ontraport, re-enter API keys, test one member’s access
  2. Member access restored within 5-10 minutes
  3. Diagnose issue offline, fix on staging
  4. Try live migration again when problems are resolved

Keep Ontraport active for 30 days after migration as a safety net. This gives you time to identify and fix any issues before canceling Ontraport entirely.

Q: Do I need to tell my members about the CRM switch?

A: Optional, but recommended for transparency:

Minimal communication approach:

  • Announce scheduled maintenance window (2-3 hours)
  • Don’t mention CRM switch details (members don’t need to know)
  • After migration, monitor support tickets for any issues

Transparent communication approach:

  • Email members 3-5 days before migration
  • Explain you’re upgrading email systems for better deliverability
  • Announce maintenance window
  • Assure them no action is required on their part
  • Provide support contact if they experience any issues

Most AccessAlly site owners use the minimal approach. If the migration is done correctly, members won’t notice any difference.

Q: Will my Stripe subscriptions still work after switching CRMs?

A: Yes, if you test subscription linking correctly. Stripe subscriptions are independent of your CRM:

  • Stripe holds the subscription data and processes payments
  • AccessAlly connects WordPress users to Stripe subscription IDs
  • The CRM (Ontraport or ActiveCampaign) doesn’t store subscription data
  • Failed payments trigger webhooks to AccessAlly, which updates member access

Critical step: After migration, test failed payment handling in Stripe test mode. Verify that a failed payment correctly removes member access. This is THE most important post-migration test.

Q: Can I simplify my tags and custom fields during migration?

A: Yes! Migration is the perfect opportunity to clean up accumulated complexity:

Safe simplifications:

  • Delete unused tags (tags not referenced in any AccessAlly access rules)
  • Consolidate similar tags (e.g., “Member – Active” and “Active Member” → “Active Member”)
  • Remove custom fields you no longer use
  • Rename confusing field names to be more descriptive

Dangerous simplifications (don’t do these):

  • Changing names of tags used in AccessAlly access rules (breaks access control)
  • Deleting custom fields that are displayed on member pages
  • Consolidating tags that grant different levels of access

Safe approach: Use your data mapping spreadsheet to mark “Still Needed?” for each field and tag. Migrate only what’s actively used, archive the rest.

Q: How do I handle members who join DURING the migration?

A: Schedule your migration during low-traffic periods, but if purchases happen:

Before going live:

  • Close order forms temporarily (disable buy buttons) OR
  • Keep Ontraport connected and accept final purchases, then export those new contacts separately

During downtime window:

  • Site in maintenance mode – no purchases possible
  • Duration: 2-3 hours

After going live:

  • Export final Ontraport data to capture any contacts added during staging period
  • Import these final contacts to ActiveCampaign via Migration Wizard
  • Verify they have correct tags and access

Q: Is ActiveCampaign really easier to use than Ontraport?

A: For most users, yes. Here’s the honest comparison:

ActiveCampaign is easier for:

  • Building email automations (visual drag-and-drop is intuitive)
  • Training team members or VAs (shorter learning curve)
  • Creating and editing campaigns (faster workflow)
  • Understanding reporting (clearer dashboards)
  • Managing contacts and tags (simpler interface)

Ontraport is better for:

  • Complex business workflows requiring advanced campaign features
  • CRM functionality (deals, pipelines, opportunity management)
  • Advanced business reporting and analytics
  • Users who’ve already mastered Ontraport’s learning curve

If you’re currently struggling with Ontraport’s complexity, ActiveCampaign will feel like a breath of fresh air. If you’ve mastered Ontraport and use its advanced features, ActiveCampaign may feel limiting.

Q: Should I hire someone to do the migration for me?

A: Consider professional help if:

  • You have 1,000+ active paying members (high stakes, can’t afford errors)
  • You have complex multi-product access control with dozens of tags
  • You’re not comfortable with technical tasks (CSV editing, API setup)
  • Your time is worth more than $500-1,000 (typical professional migration cost)
  • You want insurance that it’s done correctly

DIY is fine if:

  • You have under 500 members
  • Simple tag structure (1-5 main tags)
  • You’re comfortable following technical instructions
  • You have 5-7 hours to invest over a week
  • You’re willing to test thoroughly on staging first

This guide is designed for DIY migration, but professional help is available if needed. Contact AccessAlly support for migration assistance referrals.

Q: What’s the #1 mistake people make during CRM migrations?

A: Skipping staging site testing. The #1 cause of failed migrations is switching the live site without testing first. Here’s what goes wrong:

Common mistakes when skipping staging:

  • Contact IDs don’t link properly → all members lose access
  • Tag names don’t match exactly → members lose access
  • Subscription webhooks not configured → failed payments don’t cancel access
  • Custom fields map incorrectly → member data shows wrong/blank values
  • Forms submit to old CRM → new contacts go to wrong place

All of these are caught during staging testing. Don’t skip staging. Request the 2-site exception from AccessAlly support and test everything before touching your live site.

Q: How long should I keep my Ontraport account active after migrating?

A: Minimum 30 days, ideally 60 days. Here’s why:

Week 1-2 after migration:

  • Identify immediate issues with access control
  • Catch any contacts that didn’t migrate correctly
  • Verify all automations are firing in ActiveCampaign
  • If critical problems arise, you can quickly roll back to Ontraport

Week 3-4 after migration:

  • Monitor subscription renewal cycle (monthly subscribers have first renewal)
  • Test that failed payments are handled correctly
  • Verify email deliverability stabilizes
  • Confirm all automations working as expected

After 30 days:

  • Export final Ontraport data for records (save CSV files)
  • Screenshot important campaigns and automations
  • Downgrade Ontraport to minimum plan OR cancel entirely
  • Remove Ontraport API keys from AccessAlly

Ontraport will prorate your final month, so keeping it active for 30-60 days as insurance is worth the cost.


Need Help?

Migration Support:

Related Guides:

🎯 Migration Success Checklist:

  • ✅ All contacts imported to ActiveCampaign with correct data
  • ✅ Contact IDs properly linked in WordPress
  • ✅ Tags and custom fields preserved
  • ✅ Ontraport f-numbers mapped to ActiveCampaign field names
  • ✅ 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 ActiveCampaign
  • ✅ Core automations rebuilt and tested
  • ✅ No critical support tickets after 7 days
  • ✅ Enjoying cost savings!
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.