ARTICLE CONTENT:
Complete Guide: Migrating from Thinkific to AccessAlly
📊 Migration Complexity: HIGH (Platform Change)
⏱️ Estimated Time: 35-55 hours (professional help recommended)
🛠️ Technical Level: Advanced – Requires WordPress + AccessAlly expertise
💰 Cost Impact: Moderate savings – depends on Thinkific plan and CRM choice
Why This Migration Is Complex
Migrating from Thinkific to AccessAlly is NOT like switching CRMs. This is a complete platform migration involving:
- Platform Change: Moving from all-in-one SaaS (Thinkific) to WordPress-based solution (AccessAlly)
- Infrastructure Setup: Setting up WordPress hosting, domain, SSL, email deliverability
- CRM Selection: Choosing and configuring a separate CRM (ActiveCampaign, Ontraport, Keap, Kit, etc.)
- Content Recreation: Manually rebuilding all courses, pages, and content in WordPress
- Member Data Migration: Moving student accounts, enrollments, access levels, and purchase data
- Payment Gateway: Setting up Stripe/PayPal integration separately
- Email Setup: Configuring transactional and marketing email systems
- Automation Rebuild: Recreating all automations in your new CRM
Unless you have WordPress development experience and AccessAlly expertise, we strongly recommend hiring professional migration assistance. This is not a beginner-friendly DIY project. Budget 35-55 hours minimum for DIY or expect $3,000-$7,000 for professional migration services.
Why Migrate from Thinkific to AccessAlly?
Common reasons for migrating despite the complexity:
- Cost Savings: Thinkific costs $49-$499/month. AccessAlly + hosting + CRM can cost $50-$150/month depending on your choices
- Ownership & Control: Own your WordPress site and data vs. being locked into Thinkific’s platform
- Flexibility: WordPress offers unlimited customization options vs. Thinkific’s templates
- Advanced Features: AccessAlly offers more sophisticated membership/course logic than Thinkific
- Integration Options: WordPress has 60,000+ plugins for any functionality you need
- No Transaction Fees: Thinkific Basic charges 10% transaction fees – AccessAlly doesn’t
- Branding Control: Remove “Powered by Thinkific” branding without upgrading
- Exit Strategy: Reduce dependency on a single SaaS vendor
What You’ll Lose (Thinkific Features Not in AccessAlly)
Be realistic about what you’re giving up:
- All-in-One Simplicity: Thinkific handles hosting, security, backups, updates automatically
- Native Course Builder: Thinkific’s drag-and-drop course builder is simpler than WordPress
- Mobile App: Thinkific offers native mobile apps for students – AccessAlly requires third-party solutions
- SCORM Compliance: Thinkific supports SCORM packages for corporate training (AccessAlly doesn’t)
- Built-in Certificates: Thinkific’s certificate generation (must use plugin with AccessAlly)
- Student Dashboards: Thinkific’s pre-built student experience (you’ll customize in WordPress)
- Thinkific Analytics: Built-in reporting dashboard (you’ll piece together with plugins)
- Compliance Features: Thinkific handles compliance tracking for corporate clients
- Advanced Quiz Engine: Thinkific’s quiz features are more robust (must recreate with plugins)
- 24/7 Platform Support: Thinkific’s support team vs. managing your own WordPress site
What You’ll Need Before Starting
✅ Required Services & Accounts
- WordPress Hosting:
- Managed WordPress host recommended: WP Engine, Kinsta, Flywheel, Cloudways
- Minimum specs: 2GB RAM, SSD storage, PHP 8.0+, MySQL 5.7+
- Budget: $30-$100/month depending on traffic
- Domain Name:
- Transfer from Thinkific or register new domain
- SSL certificate (usually included with hosting)
- AccessAlly License:
- Professional or higher plan (supports full course features)
- Price: Starting at $83/month annually
- CRM Selection: Choose ONE of the following:
- ActiveCampaign: $29-$149/month – Best for advanced automation
- Ontraport: $79-$297/month – All-in-one CRM + automation
- Keap (Infusionsoft): $159-$229/month – Full CRM/sales features
- Kit (ConvertKit): $25-$259/month – Simple, creator-focused
- Drip: $39-$1,899/month – E-commerce focused
- AccessAlly Managed: $97-$497/month – Easiest setup (AccessAlly handles it)
- Payment Gateway:
- Stripe account (recommended) OR PayPal Business
- Cannot transfer existing subscriptions from Thinkific’s payment system – see subscription migration section
- Email Sending Service: Choose ONE of the following:
- SendGrid: Transactional emails (free up to 100/day)
- Mailgun: Transactional emails (pay-as-you-go)
- Amazon SES: Very cheap, requires technical setup
- OR use CRM for all emails (if your CRM supports transactional emails)
- Video Hosting: (Thinkific hosts videos – you’ll need external host)
- Vimeo Pro/Plus: $12-$75/month – privacy controls, no ads
- Wistia: $19-$99/month – marketing features, detailed analytics
- YouTube (Unlisted): Free – but no privacy, shows YT branding
📋 Technical Requirements
- WordPress admin skills (creating pages, installing plugins, basic troubleshooting)
- Basic HTML/CSS knowledge (for styling content after migration)
- Spreadsheet skills (for CSV data transformation)
- Understanding of DNS (for domain switching)
- Familiarity with FTP or hosting control panel
If you don’t have the technical skills listed above, DO NOT ATTEMPT THIS MIGRATION ALONE. Contact AccessAlly for professional migration services or hire a WordPress developer with AccessAlly experience. DIY migration without proper skills will result in broken access, lost content, and frustrated students.
📋 Complete the Pre-Migration Checklist
Before proceeding, work through the complete Pre-Migration Checklist. Key items include:
- Thinkific data export (students, courses, content, analytics)
- Audit of current student count, products, and revenue
- Data mapping spreadsheet (Thinkific courses → AccessAlly structure)
- WordPress hosting setup and testing
- Staging environment for migration testing
- Downtime plan and student communication strategy
- Backup plan in case migration fails
Phase 1: Planning & Infrastructure Setup (8-12 hours)
Step 1: Choose Your CRM
Unlike Thinkific (all-in-one), AccessAlly requires a separate CRM for member management and email marketing. This is a critical decision that affects your entire migration.
CRM Selection Guide:
| CRM | Best For | Pros | Cons | Price |
|---|---|---|---|---|
| AccessAlly Managed | Simplest transition, non-technical users | Zero CRM setup, AccessAlly handles it | Less flexibility, higher cost at scale | $97-$497/mo |
| ActiveCampaign | Advanced automation, segmentation | Powerful automations, affordable | Complex interface, learning curve | $29-$149/mo |
| Ontraport | All-in-one CRM + marketing | CRM features, membership sites | Expensive, overkill for some | $79-$297/mo |
| Kit (ConvertKit) | Creators, simple email marketing | Easy to use, creator-focused | Limited custom fields, no CRM | $25-$259/mo |
| Keap | Sales teams, CRM + automation | Full CRM, pipeline management | Expensive, complex setup | $159-$229/mo |
Recommendation for Thinkific users:
- If you value simplicity: AccessAlly Managed Contacts (easiest transition)
- If you want power + affordability: ActiveCampaign (most popular choice)
- If you need full CRM: Ontraport or Keap
- If you’re a solo creator: Kit (simplest email marketing)
Step 2: Set Up WordPress Hosting & Install AccessAlly
- Sign up for managed WordPress hosting (WP Engine, Kinsta, or similar)
- Install WordPress (usually one-click installer in hosting control panel)
- Install essential plugins:
- AccessAlly (your license)
- SSL certificate (usually included with hosting)
- Backup plugin (UpdraftPlus, BackupBuddy, etc.)
- Security plugin (Wordfence, Sucuri, etc.)
- Choose a WordPress theme:
- Use AccessAlly-compatible theme (Astra, GeneratePress, Kadence recommended)
- Or use page builder (Elementor, Beaver Builder, Divi)
- Configure basic WordPress settings:
- Set permalinks to “Post name” (Settings → Permalinks)
- Disable comments (if not needed)
- Set timezone correctly
- Test site performance and security before proceeding
Step 3: Set Up Your CRM and Connect to AccessAlly
- Create CRM account (based on Step 1 choice)
- Complete basic CRM setup:
- Configure sender email and domain authentication
- Set up email deliverability (SPF, DKIM, DMARC records)
- Test email sending
- Connect CRM to AccessAlly:
- Go to AccessAlly → Settings → General
- Select your CRM
- Enter API credentials (varies by CRM)
- Test connection
- Verify connection works by creating a test contact
CRM setup resources:
Step 4: Configure Payment Gateway (Stripe or PayPal)
- Create or connect Stripe/PayPal account
- In AccessAlly, go to Settings → Payment Integration
- Choose payment processor (Stripe recommended)
- Enter API credentials:
- Stripe: API Keys from Stripe Dashboard → Developers → API Keys
- PayPal: API credentials from PayPal Developer Dashboard
- Configure webhook URLs (AccessAlly provides these)
- Test mode first: Use test API keys to verify setup works
- Complete test purchase to verify end-to-end payment flow
- Switch to live mode when testing passes
Thinkific’s payment system is proprietary. You CANNOT automatically transfer active subscriptions from Thinkific to Stripe/PayPal. You have three options:
- Grandfather existing subscriptions: Let current subscribers stay on Thinkific payments until they cancel, move new sales to AccessAlly
- Request student re-subscription: Offer free months or incentive for students to cancel Thinkific subscription and re-subscribe through AccessAlly (risky – expect churn)
- Manual subscription migration: Use Stripe Billing Portal to migrate subscriptions one-by-one (very labor-intensive)
See Step 13 for detailed subscription migration strategies.
Step 5: Export All Data from Thinkific
Thinkific provides several export options. Export all data before starting content migration.
Student Data Export:
- Go to Thinkific → Manage Learning → Students
- Click “Export Students”
- Select “All students” and “All fields”
- Download CSV
- This includes: Email, Name, Enrollment Date, Courses enrolled, Progress, Last login
Course Enrollments Export:
- Go to Thinkific → Manage Learning → Enrollments
- Click “Export Enrollments”
- This shows which student is enrolled in which course
- Includes: Student email, Course name, Enrollment date, Progress %, Completion status
Orders/Revenue Export:
- Go to Thinkific → Manage Learning → Orders
- Click “Export Orders”
- Includes: Order ID, Student email, Product purchased, Price, Date, Payment status
- Use this to verify revenue and understand which students paid for what
Course Content Export:
- Bulk Reports: Thinkific provides bulk reports for course content
- Go to each course → Settings → Advanced → Export Course Content
- Download course outline (text file with lesson names and descriptions)
- Download attachments (PDFs, documents)
- Video Downloads:
- Thinkific hosts videos on their platform – you must download each video
- Go to Course → Curriculum → each lesson
- If you uploaded videos directly to Thinkific, download them from lesson editor
- If videos hosted elsewhere (YouTube, Vimeo), note the video IDs
- WARNING: Thinkific may not allow bulk video download – budget significant time for this
- Course Pages/Landing Pages:
- Screenshot each landing page layout
- Copy text content to Google Docs or Word
- Download images and assets
- Quizzes/Assessments:
- Thinkific doesn’t export quiz data – manually document each quiz
- Copy questions, answers, scoring logic
- You’ll recreate quizzes in WordPress
Analytics Export:
- Go to Thinkific → Analyze
- Export key reports for reference:
- Revenue reports
- Student enrollment trends
- Course completion rates
- Student engagement metrics
- Save PDFs or CSV exports for historical reference
Step 6: Map Thinkific Courses to AccessAlly Structure
Thinkific’s course structure is different from AccessAlly. You need to map how Thinkific courses translate to AccessAlly modules and access rules.
Create a mapping spreadsheet using the Data Mapping Reference Guide.
| Thinkific Product | AccessAlly Product Type | Access Rules | CRM Tags Needed |
|---|---|---|---|
| Thinkific Course | AccessAlly Module (course structure) | Tag-based access | “Course: [Name]” |
| Thinkific Bundle | Multiple Modules OR single bundle tag | Bundle tag OR individual course tags | “Bundle: [Name]” or all course tags |
| Thinkific Membership | Multiple Modules with membership level | Membership level tag | “Member: Active” |
| Thinkific Free Course | AccessAlly Module with signup-only access | Auto-assigned tag on registration | “Lead: [Course Name]” |
AccessAlly product structure concepts:
- Modules: AccessAlly’s course structure (like Thinkific courses)
- Posts: Individual course lessons (like Thinkific lessons)
- Access Rules: Tag-based (purchase assigns tag, tag grants access)
- Release Schedules: Time-based content unlocking (drip content)
- Membership Levels: Grouping of access rules (optional, simplifies management)
Step 7: Plan Content Recreation Strategy
You’ll manually recreate all courses and pages in WordPress. Plan your approach:
Option 1: Recreate Everything from Scratch (Cleanest)
- Start with blank WordPress site
- Recreate each course using AccessAlly modules
- Rebuild pages with your WordPress theme/page builder
- Pros: Clean, optimized, no Thinkific artifacts
- Cons: Most time-intensive (25-35 hours for content alone)
Option 2: Hybrid Approach (Recommended)
- Recreate critical pages from scratch (homepage, sales pages)
- Copy/paste course content (text, descriptions) into WordPress posts
- Reformat using WordPress editor
- Pros: Faster than full recreation (18-28 hours)
- Cons: Some formatting cleanup needed
Option 3: Minimal Viable Migration (Fastest)
- Copy/paste all content as-is
- Minimal formatting cleanup
- Improve design iteratively after launch
- Pros: Fastest (12-18 hours)
- Cons: Site may look rough initially
Step 8: Create Tag Taxonomy in Your CRM
Plan your tag structure before importing students. AccessAlly uses tags to control access.
Recommended tag categories:
- Product Tags: Assigned on purchase, grant access
- Example: “Course: [Name]”, “Bundle: [Name]”, “Membership: Active”
- Status Tags: Track student lifecycle
- Example: “Status: Active”, “Status: Cancelled”, “Status: Refunded”
- Progress Tags: Track course progress (optional)
- Example: “Progress: Module 1 Complete”, “Progress: Course Complete”
- Segmentation Tags: Marketing segments
- Example: “Segment: Beginner”, “Interest: Marketing”
Create tags in your CRM before importing students. This ensures tags exist when you assign them during migration.
Phase 2: Content Migration & Setup (18-28 hours)
Step 9: Recreate Course Structure in AccessAlly
Build your course structure using AccessAlly modules before importing students.
- Create an AccessAlly Module for each Thinkific course:
- Go to AccessAlly → Modules → Add New
- Name it matching your Thinkific course
- Set access rule: “Has tag: Course: [Course Name]”
- Create WordPress posts for each lesson:
- Copy content from Thinkific lesson (from your course export)
- Paste into WordPress post editor
- Reformat using Gutenberg blocks or page builder
- Upload and embed videos (host on Vimeo, Wistia, or YouTube)
- Add lesson to AccessAlly Module
- Configure lesson progression:
- Set completion buttons (AccessAlly “Mark Complete” feature)
- Configure drip schedule if applicable (release dates or intervals)
- Set prerequisites (Lesson 2 requires Lesson 1 complete, etc.)
- Create module navigation:
- Use AccessAlly’s module navigation block
- Show progress bar
- Previous/Next lesson buttons
- Test course flow:
- Create test student with course tag
- Navigate through lessons
- Test completion tracking
Video hosting options:
- Vimeo Pro/Plus: $12-$75/month – privacy controls, no ads, best for courses
- Wistia: $19-$99/month – marketing features, detailed analytics
- YouTube (Unlisted): Free – but no privacy, shows YT branding, not recommended for paid courses
- Self-host: Not recommended – huge bandwidth costs and slow loading
Step 10: Recreate Quizzes and Assessments
Thinkific’s quiz features are robust. You’ll need plugins to replicate functionality in AccessAlly.
Quiz Plugin Options:
| Plugin | Features | Price |
|---|---|---|
| LearnDash Quiz Add-on | Advanced quiz features, grading, certificates, integrates with AccessAlly | $199/year |
| Gravity Forms + Quiz Add-on | Custom quiz builder, grading, conditional logic | $59-$259/year |
| H5P | Interactive content including quizzes, free | Free |
| WP Quiz | Simple quiz builder, basic features | Free/$39 |
Recreating Thinkific quizzes:
- Choose quiz plugin based on your needs
- Install and configure plugin
- For each Thinkific quiz:
- Copy questions and answers from Thinkific export
- Recreate in quiz plugin
- Set passing score (if applicable)
- Configure retake policies
- Add quiz to appropriate lesson in AccessAlly module
- Test quiz functionality:
- Submit correct answers
- Submit incorrect answers
- Verify scoring
- Test retake logic
Step 11: Recreate Certificates (If Applicable)
If you use Thinkific’s certificate feature, replicate it in WordPress.
Certificate Plugin Options:
- Learner Dashboard + Certificates: Works with AccessAlly, generates PDF certificates
- WP Courseware Certificates: Custom certificate templates
- Gravity Forms + PDF add-on: Custom certificate generation
Certificate setup steps:
- Choose certificate plugin
- Design certificate template (match Thinkific design or create new)
- Configure certificate trigger:
- Option 1: Certificate issued when course completion tag applied
- Option 2: Certificate button on course complete page
- Test certificate generation
- Verify student name, course name, date populate correctly
Step 12: Recreate Sales Pages and Website Structure
- Homepage: Recreate using your WordPress theme or page builder
- Sales pages: Rebuild course sales pages
- Copy sales copy from Thinkific
- Recreate design in WordPress (use Thinkific screenshots as reference)
- Add AccessAlly order forms (see Step 13)
- About/Contact pages: Standard WordPress pages
- Student dashboard: Create landing page for logged-in students
- Show enrolled courses
- Link to module pages
- Display progress (if using progress tracking)
- Use AccessAlly’s member dashboard widgets
- Navigation menus:
- Create WordPress menus (Appearance → Menus)
- Different menus for logged-in vs. logged-out users
Step 13: Create Order Forms for Products
AccessAlly uses custom order forms that integrate with your payment gateway and CRM.
- Go to AccessAlly → Order Forms → Add New
- Configure product details:
- Product name and description
- Price and billing frequency (one-time, subscription, payment plan)
- Payment gateway (Stripe or PayPal)
- Set post-purchase actions:
- Assign tag: “Course: [Course Name]” (this grants access)
- Create WordPress user: If not already a student
- Send welcome email: Configure in CRM automation
- Redirect: Thank you page or course dashboard
- Customize form fields:
- Email (required)
- Name (required)
- Payment details
- Optional: Phone, address, custom fields
- Style form to match your site design
- Embed form on sales page using shortcode
- Test purchase flow end-to-end:
- Complete test purchase
- Verify payment processes
- Verify tag assigned in CRM
- Verify WordPress user created
- Verify access to course
Map each Thinkific product to an AccessAlly order form.
Step 14: Set Up Email Deliverability
Unlike Thinkific (built-in email), you must configure email sending separately.
Two types of emails to configure:
- Transactional Emails: Purchase receipts, password resets, course access notifications
- Option 1: Use SendGrid/Mailgun/Amazon SES + WP Mail SMTP plugin
- Option 2: Use your CRM if it supports transactional emails
- Marketing Emails: Newsletters, campaigns, sequences
- Sent from your CRM (ActiveCampaign, Kit, Ontraport, etc.)
Configure WordPress transactional emails:
- Install WP Mail SMTP plugin
- Connect to SendGrid, Mailgun, or Amazon SES
- Configure SMTP settings (provided by email service)
- Test email sending (plugin has test feature)
- Verify password reset and purchase receipt emails work
Configure CRM marketing emails:
- Set up domain authentication in CRM (SPF, DKIM, DMARC records)
- Verify sender email
- Test broadcast email send
- Check spam score and deliverability
Poor email setup = emails go to spam = students can’t access purchases. Test email deliverability thoroughly before launch. Use tools like Mail-Tester.com to check spam score. Ensure SPF, DKIM, and DMARC records are properly configured.
Phase 3: Student Data Migration (8-12 hours)
Step 15: Handle Active Subscriptions
This is one of the most complex parts of Thinkific → AccessAlly migration. Thinkific uses integrated payment processing, so active subscriptions cannot automatically transfer.
Strategy 1: Grandfather Existing Subscriptions (Recommended)
- Keep Thinkific active temporarily (downgrade to Basic plan if possible – still has payments)
- Existing subscribers stay on Thinkific payment system
- Grant them access in AccessAlly site using their enrollment tags
- Configure Zapier/Make to sync:
- When subscription renews in Thinkific → update tag in CRM (keep access active)
- When subscription cancels in Thinkific → remove tag in CRM (revoke access)
- New purchases happen on AccessAlly site (Stripe/PayPal)
- Over time, existing subscribers naturally churn/cancel
- Eventually all students on AccessAlly payment system
- Cancel Thinkific when last legacy subscriber cancels (6-18 months)
Pros: No student disruption, no churn risk, clean student experience
Cons: Maintain Thinkific + AccessAlly simultaneously (6-18 months), ongoing sync complexity, ongoing Thinkific costs
Strategy 2: Request Student Re-Subscription (High Risk)
- Email all active subscribers announcing migration
- Offer generous incentive to re-subscribe (e.g., “Cancel Thinkific, get 3 free months on new site”)
- Provide clear instructions:
- Cancel Thinkific subscription
- Sign up on new site (use unique URL with coupon code)
- Risk: 20-40% may not complete re-subscription (churn loss)
- Mitigation: Very generous incentive, excellent communication, personal outreach to high-value subscribers
Pros: Clean break from Thinkific, simplified system, lower ongoing costs
Cons: High churn risk (20-40% typical), student frustration, immediate revenue loss
Strategy 3: Manual Stripe Migration (Most Work, Best Retention)
- Export active subscriber list from Thinkific Orders
- Use Stripe Billing Portal to manually create subscriptions for each student
- Email students: “We’ve migrated your subscription to our new platform – no action needed”
- Provide new login link and password reset instructions
- Students continue being charged automatically via Stripe
- You’ll need to manually cancel Thinkific subscriptions (so students aren’t double-charged)
- Very labor-intensive for large lists (10-20 minutes per subscriber)
Pros: High retention, seamless student experience, clean break from Thinkific
Cons: Extremely labor-intensive (only viable for < 100 subscribers), requires careful coordination, risk of double-billing errors
Step 16: Prepare Student Import CSV
Transform your Thinkific student export into AccessAlly import format.
Required columns for AccessAlly import:
email– Email address (required)first_name– First namelast_name– Last nametags– Comma-separated list of CRM tag names- Any custom fields you created in CRM
CSV transformation steps:
- Open Thinkific Student export and Enrollments export in Excel or Google Sheets
- Use VLOOKUP to combine data:
- Match student email to enrollment data
- For each student, list all courses they’re enrolled in
- Map Thinkific enrollments to AccessAlly tags:
- If student enrolled in “Course A” → add “Course: Course A” to tags column
- If student has active subscription → add “Status: Active” to tags column
- If student enrollment expired → add “Status: Expired” to tags column
- Create tag conversion formulas:
// Example: If "Enrolled Courses" column contains "Course Name", append "Course: Course Name" to tags =IF(ISNUMBER(SEARCH("Course Name", D2)), "Course: Course Name, ", "") & E2 - Consolidate tags into single comma-separated column
- Remove test/demo accounts (Thinkific demo students)
- Validate email addresses (remove invalid/test emails)
- Save as new CSV: “thinkific-to-accessally-import.csv”
Step 17: Import Students via Migration Wizard
- On staging site first, go to AccessAlly → Migration Wizard
- If you don’t see Migration Wizard, download and activate the plugin (instructions)
- Click “Import from CSV”
- Upload your prepared CSV file
- Map CSV columns:
- email → Email
- first_name → First Name
- last_name → Last Name
- tags → Tags (comma-separated)
- Choose import options:
- Create users in WordPress: Check (creates WP accounts)
- Create users in CRM: Check (creates CRM contacts)
- Add tags: Check (applies course/access tags)
- Send confirmation email: UNCHECK for paid students (they already confirmed). CHECK for free students if you want to re-confirm opt-in.
- Start import
- Monitor progress: ~100-200 students per minute
- Review import log for any errors
What happens during import:
- WordPress user account created for each student
- Contact created in CRM with email, name, enrollment tags
- CRM Subscriber ID stored in WordPress user meta (critical for linking)
- Tags applied in CRM (grants access to courses)
Step 18: Verify Student Access
Test that imported students can access their enrolled courses.
- Pick 10-15 test students from different course enrollments
- For each student:
- Verify WordPress user exists
- Verify CRM contact exists with correct enrollment tags
- Verify Subscriber ID stored in WP user meta
- Test login (use password reset to set password)
- Verify they can access their enrolled courses
- Verify they CANNOT access courses they didn’t enroll in
- Fix any access issues before proceeding
The #1 issue with platform migrations is incorrect access rules. Students get frustrated when they can’t access content they paid for. Test access thoroughly with real student accounts before launching. Check at least 10-15 different students across all course tiers.
Step 19: Rebuild Automations in CRM
Thinkific automations (if you used them) cannot be exported. Rebuild them in your new CRM.
Common automations to recreate:
| Thinkific Automation | CRM Equivalent |
|---|---|
| Welcome email on enrollment | CRM automation triggered by course enrollment tag |
| Post-purchase drip sequence | Tag trigger automation in CRM |
| Course completion emails | Tag-based automation (AccessAlly adds completion tag) |
| Engagement reminders (inactive students) | CRM automation based on engagement tags or last login date |
| Upsell campaigns | CRM broadcast or automation based on completion tags |
Steps to rebuild automations:
- Document each Thinkific automation (screenshot workflows if available)
- Identify triggers: What starts the automation? (enrollment, completion, date, etc.)
- Identify actions: What happens? (send email, assign tag, wait, etc.)
- Recreate in CRM using your CRM’s automation builder
- Test each automation:
- Trigger the automation with a test contact
- Verify emails send
- Verify tags apply
- Verify timing is correct
Phase 4: Testing & Go-Live (6-8 hours)
Step 20: Comprehensive Testing on Staging
Test EVERYTHING before touching live Thinkific site:
✅ Student Access Testing
- Test login for 10-15 students (different course enrollments)
- Verify correct course access for each enrollment
- Verify restricted content blocks non-students
- Test password reset flow
- Test student dashboard navigation
✅ Purchase Flow Testing
- Complete test purchase for each product
- Verify payment processes (Stripe/PayPal)
- Verify WordPress user created
- Verify CRM contact created with enrollment tag
- Verify access granted immediately
- Verify purchase receipt email sent
- Verify welcome automation triggers
✅ Course Functionality Testing
- Navigate through course lessons
- Test video playback (check loading speed)
- Test downloadable resources
- Test lesson completion tracking
- Test drip content release (if applicable)
- Test prerequisites (can’t skip ahead)
- Test quiz functionality (if using quizzes)
✅ Email Testing
- Test transactional emails (purchase receipt, password reset, enrollment confirmation)
- Test welcome sequence triggers
- Test broadcast email sending
- Check spam score (Mail-Tester.com)
- Verify unsubscribe links work
✅ Subscription Testing (If Applicable)
- Test subscription purchase
- Verify recurring billing set up in Stripe/PayPal
- Test subscription renewal webhook
- Test subscription cancellation
- Verify access removed on cancellation
- Test failed payment handling
✅ Performance & Security Testing
- Test site speed (GTmetrix, Google PageSpeed) – aim for < 3 second load time
- Test mobile responsiveness (course content readable on phone)
- Test SSL certificate (site loads over HTTPS)
- Test security (no admin username “admin”, strong passwords)
- Test backup system (restore from backup)
Step 21: Plan DNS and Domain Cutover
Switching from Thinkific domain to WordPress hosting requires DNS changes.
Option 1: Use Same Domain (Recommended)
- Your domain currently points to Thinkific
- Change DNS A record to point to WordPress hosting IP
- DNS propagation takes 1-48 hours (usually < 6 hours)
- During propagation, some users see old Thinkific site, some see new WordPress site
- Coordinate go-live during low-traffic window (weekend or evening)
Option 2: Use New Subdomain During Transition (Safest)
- Launch AccessAlly site on subdomain (e.g., learn.yourdomain.com or members.yourdomain.com)
- Keep Thinkific site running during transition period
- Add redirects from Thinkific course URLs to new subdomain
- Eventually point main domain to WordPress
- Pros: No downtime, easy rollback if issues occur
- Cons: SEO impact, student confusion about URL change
DNS cutover steps (Option 1 – same domain):
- Get WordPress site IP address from hosting provider
- Access domain registrar DNS settings
- Change A record:
- Old: Points to Thinkific IP
- New: Points to WordPress hosting IP
- Lower TTL to 300 seconds (5 minutes) 24 hours before switch
- Make DNS change during scheduled downtime window
- Monitor DNS propagation: Use whatsmydns.net to check global propagation
- Once propagated, test site on live domain
Step 22: Go Live
Launch day checklist:
- 48 hours before:
- Email students announcing migration and planned downtime window
- Provide timeline and what to expect (“New login page, same courses”)
- Offer support contact in case of issues
- Set expectations: “You’ll need to reset your password on first login”
- Day of launch:
- Put Thinkific site in maintenance mode OR add prominent announcement banner
- Final Thinkific data export (capture any students added since last export)
- Import any new students to AccessAlly
- Make DNS change (point domain to WordPress)
- Monitor DNS propagation (use whatsmydns.net)
- Once propagated, test live site thoroughly (all critical paths)
- Announce launch to students (email + social media if applicable)
- First 2 hours after launch:
- Monitor support emails/tickets closely
- Watch for login issues, access problems, video playback issues
- Have team ready to respond to student questions immediately
- Fix critical issues immediately
- Keep FAQ document ready with common questions
Step 23: Post-Migration Verification
Work through the complete Post-Migration Verification Checklist. Key items for Thinkific → AccessAlly:
✅ Student Data Integrity (First 24 Hours)
- Verify total student count matches Thinkific
- Spot-check 25 random students for correct access
- Verify Subscriber IDs properly stored in WordPress
- Check for duplicate accounts (merge if found)
- Verify course enrollment tags match Thinkific enrollments
✅ Access & Permissions (First 48 Hours)
- Test login for multiple student types (free, paid, subscription)
- Verify access to all enrolled courses
- Verify restricted content blocks non-students
- Test course navigation and lesson progression
- Verify drip content releases on schedule
- Test quiz access and functionality
✅ Purchase & Payment Flow (First Week)
- Monitor new purchases closely
- Verify payment processing (check Stripe/PayPal dashboard daily)
- Verify student creation on purchase
- Verify access granted immediately
- Verify purchase receipt emails send
- Test subscription renewal (wait for first renewal)
- 🚨 CRITICAL: Test failed payment handling
✅ Email Deliverability (First Week)
- Monitor email deliverability rates (should be > 95%)
- Check spam complaints (should be < 0.1%)
- Verify transactional emails (receipts, password resets, enrollments)
- Verify marketing emails (broadcasts, sequences)
- Test email across multiple providers (Gmail, Outlook, Yahoo, Apple Mail)
✅ Automations & Sequences (First 2 Weeks)
- Verify welcome sequences trigger for new students
- Verify post-purchase automations fire correctly
- Verify course completion automations work
- Monitor automation errors in CRM (check error logs daily)
- Fix any automation issues immediately
✅ Video Performance (First Week)
- Monitor video playback errors (check Vimeo/Wistia analytics)
- Check video loading speed on different devices
- Test video privacy settings (ensure videos can’t be accessed without login)
- Verify video embeds work on all lessons
Step 24: Monitor & Support (First 30 Days)
Day 1-7: High Alert Mode
- Monitor support tickets/emails constantly (check every 2 hours)
- Respond to student issues within 2 hours
- Watch for patterns (same issue reported multiple times = systemic problem)
- Fix critical bugs immediately (access issues, payment failures)
- Document workarounds for non-critical issues
- Keep detailed log of all issues and resolutions
Day 8-14: Stabilization
- Reduce monitoring to 2-3 times per day
- Start addressing non-critical issues
- Gather student feedback on new site (survey or email)
- Make minor improvements based on feedback
- Optimize slow-loading pages
Day 15-30: Optimization
- Analyze student engagement (are they completing courses?)
- Review analytics (compare to Thinkific baseline)
- Optimize course content formatting
- Refine automations based on data
- Plan content/feature improvements
- Survey students for satisfaction
After 30 days:
- If no major issues and using Strategy 1 (grandfathered subscriptions), keep Thinkific for legacy subscriptions
- If using Strategy 2 or 3, verify all students migrated successfully, then cancel Thinkific
- Export final Thinkific data for permanent records
- Backup Thinkific course content (screenshots, exports)
- Celebrate successful migration!
Troubleshooting Common Issues
Issue 1: Students Can’t Log In
Symptoms: Students report “Invalid username or password” errors
Causes:
- WordPress user not created during migration
- Email address doesn’t match (typo in import CSV)
- Password not set (first-time WordPress login requires password reset)
- User account exists but is disabled
- Student using old Thinkific password (won’t work in WordPress)
Solution:
- Search for user in WordPress → Users
- If user doesn’t exist: Re-import that student via Migration Wizard
- If user exists: Send password reset email (Users → hover over user → Send Password Reset)
- If still failing: Check email address matches exactly (case-sensitive)
- Verify user role is set (should be “Subscriber” or custom role)
- Check if account is marked as spam (Users → filter by Spam, unspam if needed)
Issue 2: Students Can’t Access Enrolled Courses
Symptoms: Logged-in student sees “You don’t have permission” on course pages they should have access to
Causes:
- Enrollment tag not assigned in CRM
- Subscriber ID not linked correctly
- Access rule misconfigured in AccessAlly module
- Tag name mismatch (typo or wrong tag)
- Thinkific enrollment expired and wasn’t caught in import
Solution:
- Check CRM: Does student have correct course enrollment tag?
- Check WordPress user meta: Is Subscriber ID stored correctly?
- Check AccessAlly module settings: Is access rule correct?
- Cross-reference Thinkific enrollment export: Was student actually enrolled?
- Test: Manually add enrollment tag to student in CRM, see if access grants
- If access grants with manual tag, issue is with tag assignment during import
- If access still doesn’t grant, issue is with Subscriber ID linking
Issue 3: Videos Not Playing or Loading Slowly
Symptoms: Video embed shows error, black screen, or takes forever to buffer
Causes:
- Video not uploaded to video host (Vimeo, Wistia)
- Video set to private without proper embed settings
- Incorrect embed code
- Video host account over quota or expired
- Video file too large (causing slow buffering)
- Video privacy settings blocking embed on your domain
Solution:
- Verify video exists in video host account (check Vimeo/Wistia library)
- Check video privacy settings:
- Vimeo: Should be set to “Hide from Vimeo.com” + “Embed: Specific domains” (add your domain)
- Wistia: Check privacy settings allow embed
- Re-copy embed code from video host (use responsive embed)
- Test embed code on simple HTML page first
- Check video file size – compress if > 500MB
- If Vimeo: Upgrade to Pro/Plus for better streaming
- If still failing: Try different video host or different video format
Issue 4: Purchase Completes But Access Not Granted
Symptoms: Student completes purchase, payment processes, but can’t access course
Causes:
- Order form not configured to assign enrollment tag
- Tag name in order form doesn’t match access rule
- CRM connection broken or API rate limited
- WordPress user created but tag not synced to CRM
- Webhook delay (tag will apply in 5-10 minutes)
Solution:
- Check order form settings (AccessAlly → Order Forms → edit form)
- Verify “Assign Tag” action is configured correctly
- Verify tag name matches exactly (case-sensitive)
- Test CRM connection (AccessAlly → Settings → Test Connection)
- Check recent purchase in CRM – did contact get created with enrollment tag?
- If tag missing: Manually add tag in CRM as temporary fix
- If not: Re-configure order form and test purchase again
- Check AccessAlly logs for API errors (WordPress → Tools → Site Health → Info → AccessAlly)
Issue 5: Emails Going to Spam
Symptoms: Students report not receiving purchase receipts, welcome emails, or enrollment confirmations
Causes:
- Email authentication not configured (SPF, DKIM, DMARC)
- Sending from unverified domain
- Email content triggers spam filters
- Poor sender reputation (new domain/IP)
- Using generic Gmail/Yahoo sender address
Solution:
- Verify email authentication records in DNS:
- Use MXToolbox to check SPF, DKIM, DMARC records
- Add missing records via domain registrar DNS settings
- Verify sender domain in CRM and email service (must match your domain)
- Test email with Mail-Tester.com (aim for 9/10 or 10/10 score)
- Remove spam trigger words from email content (“free”, “buy now”, excessive caps)
- Ensure all emails have clear unsubscribe link
- Warm up sender reputation:
- Start by sending to small engaged segment
- Gradually increase volume over 2 weeks
- Monitor bounce and spam complaint rates
- Use custom domain email ([email protected]) not Gmail/Yahoo
Issue 6: Student Progress Not Tracking
Symptoms: Students complete lessons but progress bar doesn’t update, completion tracking doesn’t work
Causes:
- AccessAlly completion buttons not configured on lessons
- Student clicking “Mark Complete” but not saving
- JavaScript error preventing tracking
- Caching plugin interfering with AJAX requests
- Progress data not syncing to CRM
Solution:
- Check lesson posts: Is AccessAlly “Mark Complete” button present?
- Test completion button yourself (does it turn green when clicked?)
- Check browser console for JavaScript errors (F12 → Console tab)
- Temporarily disable caching plugins, test again
- Check AccessAlly module settings: Is progress tracking enabled?
- Check CRM: Are completion tags being applied?
- If tags not applying: Reconfigure completion button in AccessAlly module
Migration Timeline & Downtime
Total Time Estimate: 35-55 hours (professional help: 2-3 weeks)
| Phase | Time (DIY) | Time (Professional) | Downtime? |
|---|---|---|---|
| CRM Selection & Setup | 3-4 hours | 1-2 hours | ❌ No |
| WordPress Hosting & AccessAlly Setup | 2-3 hours | 1 hour | ❌ No |
| Payment Gateway Configuration | 2-3 hours | 1 hour | ❌ No |
| Thinkific Data Export & Mapping | 2-4 hours | 1-2 hours | ❌ No |
| Course Content Recreation | 12-22 hours | 8-15 hours | ❌ No (build on staging) |
| Video Migration & Hosting Setup | 4-8 hours | 3-5 hours | ❌ No |
| Quiz & Certificate Recreation | 2-4 hours | 1-2 hours | ❌ No |
| Sales Pages & Website Rebuild | 4-6 hours | 3-4 hours | ❌ No |
| Order Forms & Payment Setup | 2-3 hours | 1-2 hours | ❌ No |
| Email Deliverability Setup | 2-3 hours | 1 hour | ❌ No |
| Student Data Import | 3-5 hours | 2-3 hours | ❌ No (staging) |
| Automation Rebuild | 2-4 hours | 1-2 hours | ❌ No |
| Testing (Staging) | 4-6 hours | 3-4 hours | ❌ No |
| DNS Cutover & Go-Live | 2-4 hours | 2-3 hours | ✅ Yes (DNS propagation: 1-6 hours) |
| Post-Launch Verification | 3-4 hours | 2-3 hours | ❌ No |
Recommended Downtime Window: 4-6 hours during DNS propagation (choose weekend or low-traffic period)
Thinkific vs AccessAlly: What You’re Giving Up and Gaining
What You Lose (Thinkific Advantages)
- All-in-One Platform: Thinkific handles hosting, security, backups, updates automatically
- Zero Technical Maintenance: No WordPress updates, plugin conflicts, or server management
- Native Mobile Apps: Thinkific offers iOS/Android apps for students
- SCORM Compliance: Corporate training compliance features
- Built-in Certificates: Automatic certificate generation on course completion
- Advanced Quizzes: Robust quiz engine with question banks, randomization
- Student Dashboard: Pre-built, polished student experience
- Thinkific Analytics: Comprehensive built-in reporting dashboard
- 24/7 Platform Support: Thinkific’s support team vs. managing your own WordPress site
- Compliance Handling: Thinkific manages GDPR, PCI security compliance
What You Gain (AccessAlly Advantages)
- Cost Savings: $100-$400/month savings depending on Thinkific plan and student count
- No Transaction Fees: Thinkific Basic charges 10% transaction fees – AccessAlly doesn’t
- Ownership & Control: You own your WordPress site, data, and content forever
- No Student Limits: Thinkific charges per student tier – AccessAlly doesn’t
- Unlimited Customization: WordPress + 60,000 plugins = any feature you can imagine
- Better SEO Control: WordPress SEO plugins are more powerful than Thinkific SEO
- Advanced Course Logic: AccessAlly’s access rules and prerequisites are more sophisticated
- CRM Flexibility: Choose the CRM that fits your needs (Thinkific’s email marketing is basic)
- Theme Freedom: Any WordPress theme vs. Thinkific’s template limitations
- No “Powered by” Branding: Remove Thinkific branding without paying for Growth plan
- Integration Ecosystem: WordPress integrates with everything
- Exit Strategy: Not locked into a single vendor platform
Should You Migrate? Decision Framework
Stay with Thinkific if:
- You value all-in-one simplicity over cost savings
- You lack technical skills and don’t want to hire help
- Your business relies on Thinkific mobile apps
- You need SCORM compliance for corporate training
- You use Thinkific’s advanced quiz engine heavily
- You don’t want to manage WordPress hosting, updates, security
- Your course business is thriving and you don’t want to risk migration issues
- Transaction fees (10% on Basic plan) are acceptable given your volume
Migrate to AccessAlly if:
- Cost savings of $100-$400/month matter to your bottom line
- Transaction fees are eating into your profit (Basic plan)
- You want ownership and control of your platform and data
- You’ve hit Thinkific’s student limits and don’t want to upgrade
- You have WordPress skills OR budget to hire professional help
- You need more advanced course logic and access rules
- You want flexibility to use any CRM, not just Thinkific’s basic email marketing
- You need custom features that Thinkific doesn’t offer
- You want to remove “Powered by Thinkific” branding without paying for Growth plan
Alternative: Consider other platforms:
- Teachable: Similar to Thinkific but different pricing model (5-10% transaction fees on lower tiers)
- Podia: Simpler than Thinkific, no transaction fees, but less customization
- LearnDash/LifterLMS: WordPress course plugins (cheaper than AccessAlly but less powerful membership features)
- Kajabi: Premium all-in-one platform (more expensive than Thinkific but more features)
Frequently Asked Questions
Q: Can I keep Thinkific and AccessAlly running simultaneously during transition?
A: Yes, this is actually the recommended approach for subscription migration (Strategy 1 in Step 15). Keep Thinkific active (downgrade to Basic plan if possible to reduce costs) for existing subscriptions while new purchases happen on AccessAlly. Use Zapier/Make to sync subscription status between platforms. Gradually phase out Thinkific as legacy subscriptions cancel naturally over 6-18 months.
Q: What happens to student progress/completion data from Thinkific?
A: Thinkific does not export course progress data. Student completion tracking will start fresh in AccessAlly. You can manually mark courses as complete for returning students if needed (use Thinkific completion export + manual tag application in CRM), but there’s no automated way to transfer progress. Communicate this clearly to students during migration announcement.
Q: Can I transfer Thinkific’s quiz results and student scores?
A: No, Thinkific quiz history doesn’t export. Students will start fresh with quizzes in AccessAlly. If quiz completion is required for certification, you have two options:
- Manually review Thinkific completion data and mark students as “course complete” if they already passed quizzes
- Require all students to retake quizzes in new system (not recommended – will cause frustration)
Recommendation: Grandfather existing students who completed courses in Thinkific (mark as complete), only require new students to complete quizzes.
Q: How do I handle Thinkific’s certificate feature?
A: Thinkific’s certificates don’t transfer. You’ll need to:
- Set up certificate plugin in WordPress (see Step 11 for options)
- Design new certificate template (can match Thinkific design or create new)
- For existing students who earned certificates in Thinkific:
- Export Thinkific completion data
- Manually issue certificates to those students in new system
- Or provide access to Thinkific certificates via PDF download page
Q: Can I migrate just one course first to test AccessAlly?
A: Yes, but you’ll still need full infrastructure setup (WordPress, AccessAlly, CRM, payment gateway). Process:
- Set up complete WordPress + AccessAlly + CRM stack (can’t skip this)
- Migrate one course content to AccessAlly
- Import only students enrolled in that course
- Run both platforms simultaneously (Thinkific for other courses, AccessAlly for test course)
- Use subdomain for AccessAlly test (e.g., new.yourdomain.com)
- Once validated, migrate remaining courses
This approach makes sense for large course libraries (10+ courses) where you want to validate AccessAlly before full commitment.
Q: What about Thinkific’s bulk video downloads? Can I export all at once?
A: Thinkific doesn’t provide bulk video download. You must download videos individually from each lesson. This is time-consuming but necessary. Tips:
- If you originally uploaded videos to Thinkific, download from lesson editor
- If videos hosted elsewhere (YouTube, Vimeo, Wistia), you already have them
- Budget 4-8 hours for video download depending on library size
- Use download manager software to speed up process
- Organize downloads by course/lesson structure for easy re-upload
Q: How do I handle Thinkific’s custom domain?
A: If you use a custom domain with Thinkific (yourdomain.com), you’ll point that domain to WordPress hosting after migration. Process:
- Keep domain pointing to Thinkific during migration prep
- Build AccessAlly site on staging URL
- When ready to launch, update DNS A record to point to WordPress hosting IP
- DNS propagation takes 1-6 hours
- Students will see new site once DNS updates
If you use Thinkific subdomain (yoursite.thinkific.com), you’ll need to register your own domain for WordPress – the Thinkific subdomain can’t be transferred.
Q: What if I use Thinkific’s built-in email marketing heavily?
A: Thinkific email campaigns need to be recreated in your new CRM. Process:
- Screenshot or export all email templates from Thinkific
- Document email automations (what triggers each email, timing, segmentation)
- Recreate email templates in your CRM (ActiveCampaign, Kit, etc.)
- Rebuild automations in CRM (usually more powerful than Thinkific’s email features)
- Test email deliverability (CRMs often have better deliverability than Thinkific)
The good news: Most CRMs have more advanced email features than Thinkific, so you’ll likely gain functionality.
Q: Can I transfer Thinkific’s student reviews/testimonials?
A: Thinkific student reviews don’t export automatically. Options:
- Manually copy reviews from Thinkific course pages
- Add reviews to WordPress using testimonial plugin
- Alternatively, embed Thinkific reviews as screenshots
- Or start fresh with review collection in WordPress
Budget extra time for manual review migration if you have many testimonials.
Q: How do I handle Thinkific’s student community/discussions?
A: If you use Thinkific’s community features (discussions, student posts), those don’t transfer. Options:
- BuddyBoss: Premium WordPress community plugin (~$250/year) – most similar experience
- PeepSo: WordPress community plugin (free or $99-$299)
- bbPress: Free WordPress forum plugin (basic features)
- External platform: Circle, Mighty Networks, Facebook Group (separate from course platform)
Export any critical community discussions before migrating (screenshots or manual export) as reference material.
Q: What about Thinkific’s affiliate program? Can I transfer affiliates?
A: Thinkific affiliate data doesn’t export automatically. You’ll need to:
- Set up affiliate program in AccessAlly or use plugin like AffiliateWP
- Export affiliate list from Thinkific (if available in your plan)
- Manually recreate affiliate accounts in new system
- Notify affiliates of new tracking links and dashboard
- Grandfather any owed commissions from Thinkific
Consider offering bonus to affiliates who transition to new system to ensure smooth changeover.
Need Help?
Professional Migration Services:
- AccessAlly Migration Services: Full-service migration from Thinkific to AccessAlly – Contact AccessAlly
- Expected cost: $3,000-$7,000 depending on complexity (number of courses, students, custom features)
- Timeline: 2-3 weeks for professional migration
- What’s included: Complete setup, content migration, student import, video hosting setup, testing, go-live support
DIY Migration Support:
- Review the Migration Support Policy
- For migration assistance: Contact AccessAlly support
- Note: DIY migrations receive limited support – professional help recommended for complex migrations
Related Guides:
- Pre-Migration Checklist
- Post-Migration Verification
- Data Mapping Reference
- AccessAlly Modules Overview
- AccessAlly Order Forms Setup
- Video Hosting Guide for Course Creators
Thinkific to AccessAlly migration is NOT a beginner project. This is a full platform change requiring WordPress development skills, AccessAlly expertise, video hosting setup, and significant time investment. Unless you have the required technical skills, hire professional help. The cost of professional migration ($3,000-$7,000) is significantly less than the revenue loss from a failed DIY migration or extended downtime.
- ✅ WordPress hosting set up and tested
- ✅ AccessAlly installed and CRM connected
- ✅ Payment gateway configured and tested
- ✅ Video hosting account created (Vimeo/Wistia)
- ✅ All videos downloaded from Thinkific and uploaded to new host
- ✅ All courses recreated in AccessAlly modules
- ✅ Videos embedded in all lessons
- ✅ Quizzes recreated with quiz plugin
- ✅ Certificate system set up (if applicable)
- ✅ Sales pages and website rebuilt
- ✅ Order forms created and tested
- ✅ Email deliverability configured (SPF, DKIM, DMARC)
- ✅ All students imported with correct enrollments
- ✅ Subscription strategy implemented (grandfathered, re-subscription, or manual migration)
- ✅ Automations recreated in CRM
- ✅ Comprehensive testing on staging site (10-15 test students)
- ✅ DNS cutover planned and executed
- ✅ Post-migration verification complete
- ✅ Students successfully using new site
- ✅ Video playback working smoothly