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

Migrating from Ontraport to Drip

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

📊 Migration Complexity: MEDIUM
⏱️ Estimated Time: 5-7 hours (plus testing)
🛠️ Technical Level: Intermediate
💰 Cost Impact: Drip pricing varies widely ($39-$1,599/mo based on list size)

Why Migrate from Ontraport to Drip?

Common reasons for migrating from Ontraport to Drip:

  • E-Commerce Focus: Drip is purpose-built for e-commerce businesses with product recommendations and revenue tracking
  • Simpler Interface: Drip has a more intuitive interface than Ontraport’s complex CRM
  • Visual Workflows: Drip’s visual automation builder is easier to understand than Ontraport campaigns
  • Better E-Commerce Integrations: Native Shopify, WooCommerce, and Magento integrations
  • Cost Reduction: May be less expensive if you don’t need Ontraport’s advanced CRM features
  • Not Using CRM Features: If you’re not using Ontraport’s deals, pipelines, or sales features, you’re overpaying
⚠️ Important Consideration: Drip is optimized for e-commerce. If you run a service-based membership or course business without physical products, Ontraport or ActiveCampaign may be better fits. Also, Drip has no field type validation – all custom fields are stored as text.

What You’ll Need Before Starting

✅ Required Access & Accounts

  • WordPress admin access to your AccessAlly site
  • Ontraport admin access (for data export)
  • Drip account access (must be set up and configured)
  • AccessAlly license that supports CRM switching
  • Access to your payment gateway (Stripe or PayPal)
  • Access to your domain’s DNS settings (for email deliverability)

📋 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 Drip 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 Drip Account

If you haven’t already set up Drip:

  1. Sign up for Drip (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. Set up custom domain for email sending (e.g., mail.yourdomain.com)
  5. Test email sending (send yourself a test campaign)
  6. Create a test form and workflow
💡 Pro Tip: Don’t import ANY contacts into Drip yet. Do all setup and configuration first, then import via AccessAlly Migration Wizard to ensure proper Contact ID linking.

Step 2: Export Your Data from Ontraport

  1. Log into your Ontraport account
  2. Go to Contacts → Export
  3. Select “All Contacts” or filter for active contacts only
  4. Choose “All Fields”
  5. Include Tags in export
  6. Click Export
  7. Ontraport will generate a CSV file (may take several minutes for large lists)
  8. Download and open the CSV

What’s included in the Ontraport export:

  • Email addresses
  • First and last names
  • Phone numbers
  • Custom fields (with field IDs like f1234)
  • Tags (comma-separated)
  • Contact IDs
  • Dates (created, modified)

What’s NOT included:

  • Campaigns and sequences (must be rebuilt in Drip)
  • Deals and pipelines (Drip doesn’t have these features)
  • Tasks and notes
  • Email campaign history
  • Form designs
  • Landing pages

Step 3: Map Your Ontraport Data to Drip

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

Ontraport Field Drip Field Notes
email email Required field
firstname first_name Standard field
lastname last_name Standard field
office_phone or cell_phone phone Drip has single phone field
Tags Tags Both use flat tag structure
Custom Fields (f1234) Custom Fields (text only) ALL Drip fields stored as text
Address (city, state, zip) address1, city, state, zip Drip has standard address fields
⚠️ CRITICAL: Drip Field Type Limitation
Unlike Ontraport (which has typed fields like number, date, dropdown), Drip stores ALL custom fields as text. This means:

  • Number fields from Ontraport become text in Drip (no validation)
  • Date fields from Ontraport become text strings in Drip
  • Dropdown fields from Ontraport become text fields in Drip
  • You lose field type enforcement and validation

Plan your data accordingly and add validation elsewhere if needed.

Step 4: Recreate Your Tags in Drip

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

Tag structure comparison:

  • Ontraport: Flat tag structure (no categories)
  • Drip: Flat tag structure (no categories)
  • Good news: Tag migration is straightforward – no category prepending issues like Keap
💡 Simplification Opportunity: This is a great time to clean up your tag structure. Consolidate similar tags and eliminate ones you’re not using. Document which tags control AccessAlly access.

Step 5: Create Custom Fields in Drip

  1. List all custom fields from Ontraport (note the f-numbers like f1234)
  2. In Drip, go to Settings → Custom Fields
  3. Create each custom field with a descriptive name
  4. Remember: ALL Drip custom fields are text fields
  5. Note the field names for CSV mapping

Ontraport → Drip custom field conversion:

Ontraport Field Type Drip Field Type Considerations
Text Text Direct mapping
Numeric Text (stores numbers as text) No numeric validation in Drip
Date Text (stores dates as strings) Use consistent date format (YYYY-MM-DD)
Drop Down Text No dropdown validation – free text entry
Check Box Text (store “true”/”false”) Use consistent boolean format
Large Text Text Direct mapping

Step 6: Connect Drip 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 before proceeding.
  1. On your STAGING site, go to AccessAlly → Settings → General
  2. Under “CRM Integration,” change from Ontraport to Drip
  3. Enter your Drip API credentials:
    • Account ID (found in Drip → Settings → Account)
    • API Token (found in Drip → Settings → User Settings → API Token)
  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 + Drip import:

  • email – Email address (required)
  • first_name – First name
  • last_name – Last name
  • tags – Comma-separated list of Drip tag names
  • Custom field columns (use Drip field names)

CSV transformation steps:

  1. Open your Ontraport export in Excel or Google Sheets
  2. Rename columns:
    • Ontraport “email” → email
    • Ontraport “firstname” → first_name
    • Ontraport “lastname” → last_name
    • Ontraport custom fields (f1234) → Drip field names
  3. Ensure tags are comma-separated in one column
  4. Convert date fields to YYYY-MM-DD format for consistency
  5. Convert checkbox fields to “true”/”false” text
  6. Remove unsubscribed contacts (or handle separately)
  7. Save as new CSV: “ontraport-to-drip-import.csv”
💡 Pro Tip: Test with a small batch (10-20 contacts) first to verify your CSV format and field mappings are correct before importing your entire list.

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 Drip 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 Drip)
    • 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 Drip
  • Tags applied in Drip
  • Contact ID from Drip stored in WordPress user meta
  • This Contact ID linking is CRITICAL for access control
⏱️ Time Estimate: Import processes ~100-200 contacts per minute. A 5,000-contact list takes about 25-50 minutes. Monitor for errors.

Step 9: Update AccessAlly Tags and Access Rules

AccessAlly stores tag names from your old CRM. After switching to Drip, verify these still match.

  1. Go through each AccessAlly Module or protected page
  2. Check “Who Can Access” settings
  3. Verify tag names match Drip tags exactly (case-sensitive)
  4. Update any tag-based access rules if tag names changed
  5. Update membership levels to link to correct Drip 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. Since both Ontraport and Drip use flat tag structures, this should be straightforward – but verify every tag reference.

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 and security issue. Test thoroughly with real subscription webhooks.

Step 11: Rebuild Your Automations in Drip

Ontraport campaigns cannot be automatically migrated. You must rebuild them as Drip workflows.

Common Ontraport automations to rebuild:

  • Email sequences: Use Drip workflows
  • Tag-based automations: Use Drip workflow triggers
  • Purchase follow-ups: Set up in Drip workflows
  • Product recommendations: Use Drip’s e-commerce features
  • Behavioral triggers: Reconfigure in Drip

Ontraport → Drip automation mapping:

Ontraport Drip Equivalent
Campaign Workflow
Sequence Workflow with delays
Tag trigger Workflow trigger (tag applied)
Wait step Delay step in workflow
If/Then block Branch step (if/else)
Goal reached Workflow goal
Email Email action
💡 Planning Tip: Document your Ontraport campaigns BEFORE migrating. Take screenshots of each workflow and list the triggers and actions. Drip’s visual workflow builder is intuitive but different from Ontraport.

Step 12: Update Forms and Opt-ins

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

Option 1: Use Drip Forms

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

Option 2: Use AccessAlly Forms (Recommended)

  1. Create forms in AccessAlly → Opt-in Forms
  2. Configure to submit to Drip
  3. Better integration with WordPress/AccessAlly features
  4. More control over styling and behavior
  5. Can use conditional logic and multi-step forms

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 Drip
  • ✅ Purchase flow works end-to-end
  • ✅ Subscription linking works
  • ✅ Failed payment handling tested
  • ✅ Workflows trigger correctly
  • ✅ Email sending works
  • ✅ Custom field data displays correctly
💡 Pro Tip: Have a team member (not you) test the member experience. Fresh eyes catch issues you’ll miss. Test with different membership levels.

Step 14: Switch Live Site to Drip

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 Ontraport data (capture any new contacts since staging)
  5. Switch AccessAlly to Drip (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 with different membership levels
  9. Take site out of maintenance mode
  10. Monitor closely for 1-2 hours

Step 15: Complete Post-Migration Checks

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

✅ Contact Data Integrity
  • Verify total contact count matches Ontraport
  • Check 10 random contacts in Drip for complete data
  • Verify Contact IDs properly stored in WordPress
  • Check for duplicate contacts
  • Verify custom field data (remember: all text now)
✅ 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
  • Verify module progression works
✅ Tags & Custom Fields
  • Verify tags migrated correctly (sample 10 contacts)
  • Check custom fields populated in Drip
  • Test tag-based access rules
  • Verify tag assignment via forms
  • Check that custom field data is accessible (even as text)
✅ Forms & Automations
  • Test each opt-in form submission
  • Verify form data reaches Drip
  • Test order form purchases
  • Confirm post-purchase workflows fire in Drip
  • Test auto-login after purchase
  • Verify email sequences trigger correctly
✅ 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 “drip_contact_id” or “contact_id”
  3. Search Drip for that Contact ID
  4. Verify it’s the correct contact
  5. Test that tagging them in Drip grants access in AccessAlly within 1-2 minutes

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 workflow 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
  • Workflow trigger verification
  • Email deliverability and engagement rates
💡 Keep Your Options Open: Keep your Ontraport account active (downgrade to smallest plan) for 30 days as a safety net. If critical issues arise, you can temporarily revert.

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 changes
  7. Celebrate cost savings!

Troubleshooting Common Issues

Issue 1: Contact IDs Not Linking (CRITICAL)

Symptoms: Members have correct tags in Drip 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 Drip contact doesn’t
  • AccessAlly→Drip connection broken

Solution:

  1. Check WordPress user meta for “drip_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 Drip matches the stored ID
  4. Test that AccessAlly can read tags from Drip for this user
  5. Test access after fixing Contact ID

Issue 2: Custom Field Data Missing or Incorrect

Symptoms: Custom field data didn’t migrate or displays incorrectly

Causes:

  • Custom fields not created in Drip before import
  • CSV column names don’t match Drip field names
  • Field type conversion issues (dates, numbers became text)
  • Special characters or formatting issues

Solution:

  1. Verify custom fields exist in Drip → Settings → Custom Fields
  2. Note exact field names (case-sensitive)
  3. Update CSV with correct Drip field names
  4. For dates: ensure consistent format (YYYY-MM-DD recommended)
  5. For numbers: verify they’re stored as text but still readable
  6. Re-import with “Update existing users” checked
  7. Check a few contacts to verify data populated

Issue 3: Tags Not Controlling Access

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

Causes:

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

Solution:

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

Issue 4: Workflows Not Triggering

Symptoms: Drip workflows not firing when expected

Causes:

  • Workflow not activated in Drip
  • Trigger conditions not met
  • Tag names don’t match trigger
  • Subscriber already completed workflow

Solution:

  1. In Drip, go to Workflows → Select your workflow
  2. Verify workflow status is “Active”
  3. Check trigger conditions (tag applied, form submitted, etc.)
  4. Verify tag names match exactly (if using tag triggers)
  5. Test with a fresh test subscriber
  6. Check workflow analytics to see where subscribers drop off

Issue 5: Forms Not Submitting to Drip

Symptoms: Form submissions not creating/updating contacts in Drip

Causes:

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

Solution:

  1. Verify AccessAlly → Drip connection still active
  2. Edit form settings in AccessAlly
  3. Ensure form is set to submit to Drip (not Ontraport)
  4. Check field mappings match Drip field names
  5. Test form submission and verify contact appears in Drip
  6. Check Drip activity feed for errors

Issue 6: 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 correctly
  • Webhook not configured for failed payments

Solution:

  1. Export active subscriptions from Stripe or PayPal
  2. Match subscription IDs to WordPress user emails
  3. Manually update AccessAlly subscription data for each user
  4. Verify webhook configured in Stripe/PayPal to notify AccessAlly
  5. Test failed payment handling for each subscription type

Detailed guide: Preserving Subscriptions During Migration


Migration Timeline & Downtime

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

Phase Tasks Time
Pre-Migration Setup Drip account setup, data export, field mapping, tag recreation, CSV preparation 2-3 hours
Staging Setup Connect Drip to staging, import contacts, update access rules 1-2 hours
Workflow Rebuild Recreate Ontraport campaigns as Drip workflows 1-2 hours
Form Migration Replace Ontraport forms with Drip/AccessAlly forms 30-60 min
Staging Testing Comprehensive testing of all features 2-3 hours
Live Site Switch Switch CRM, import final data, verify access (DOWNTIME REQUIRED) 2-3 hours
Post-Migration Verification Complete verification checklist, monitor for issues 1-2 hours

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

💡 Pro Tip: You can minimize downtime by completing all prep work in advance (steps 1-7), then only putting your site in maintenance mode for the actual CRM switch and import. This reduces member-facing downtime to 1-2 hours.

Need Help?

Consider professional migration assistance if:

  • You have 1,000+ active members
  • You have complex tag-based access rules
  • You can’t afford downtime or access issues
  • You’re not comfortable with CRM switches
  • Your custom fields use complex validation
  • You have many Ontraport campaigns to rebuild

Migration Support:

Related Guides:

🎯 Migration Success Checklist:

  • ✅ All contacts imported to Drip with correct data
  • ✅ Contact IDs properly linked in WordPress
  • ✅ Tags migrated correctly (flat structure advantage)
  • ✅ Custom fields populated (as text fields)
  • ✅ 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 Drip
  • ✅ Core workflows rebuilt and tested
  • ✅ Email deliverability verified
  • ✅ 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.