The complete guide to Thinkific migration
Everything you need to know about migrating from Thinkific to WordPress or Laravel — from API access through video protection.
Why migrate from Thinkific?
Thinkific is a solid SaaS platform, but growing course businesses often hit limits: restricted customization, rising subscription costs as student counts grow, no control over video hosting infrastructure, and dependency on a platform that can change pricing or features at any time. Self-hosting on WordPress or Laravel gives you full control over content, users, infrastructure, and costs.
What does Thinkific's API let you extract?
Thinkific provides both GraphQL and REST APIs. The REST API handles user profiles, enrollment records, and basic course metadata. The GraphQL API is where the real power is — the VideoContent type exposes direct MP4 CDN URLs (the same files Thinkific serves to students), videoId, thumbnail URLs, and playUrl for streaming. Combined, these APIs let you extract every course structure, lesson, quiz, video URL, PDF attachment, user profile, and enrollment record programmatically.
Where can you migrate Thinkific content to?
We support 8 destinations: five WordPress LMS plugins (LearnDash, LifterLMS, Tutor LMS, LearnPress, Sensei LMS) and three Laravel options (Academy LMS, Edulab LMS, and custom Laravel applications). Each destination has different strengths — LearnDash for enterprise quiz features, LifterLMS for membership bundles, Tutor LMS for frontend course building, and Laravel for complete architectural control.
How does video migration work without Vimeo?
Most migration guides assume you'll re-host on Vimeo. We skip that entirely. Thinkific's GraphQL VideoContent type gives us direct MP4 download URLs. Our VideoMigrator downloads from Thinkific's CDN with concurrent connections and uploads to your S3 bucket with multipart upload for large files. CloudFront delivers globally. Total hosting cost: approximately $15/month for 691 videos versus $65/month for Vimeo Advanced — with no upload quotas.
What about enrollment data?
Every enrollment record is migrated with its original start date (from activated_at or created_at), expiration date (from expiry_date), and enrollment key. Critical detail: Thinkific's REST API returns all enrollments for users in a queried course — not just enrollments for that specific course. Without post-processing to filter by course_id, your enrollment files will be cross-contaminated. Our export tool handles this automatically.
How is video content protected after migration?
We implement seven protection layers: S3 bucket policies with referrer restrictions, CloudFront signed cookies for session-based access, short-lived pre-signed URLs, HTML5 controlsList=nodownload, disablePictureInPicture, context menu blocking, and a WordPress mu-plugin to preserve these attributes through wp_kses sanitization. This achieves Vimeo-equivalent protection without monthly fees or DRM complexity.
What does it cost?
Fixed-price per migration: a volume tier sets the base price, and à la carte add-ons stack on top. Volume tiers — Starter ($1,500–$3,000) for 1–5 courses with hosted video and basic protection. Professional ($3,000–$7,500) for 5–20 courses with player-locked video and CDN-accelerated playback. Enterprise ($7,500+) for 20+ courses with per-student secure video access and custom destination integration. Add-ons available at any tier: quiz migration ($50/quiz, capped at $1,500), 30/60/90-day post-launch watch ($500/$900/$1,200), dedicated Slack channel ($250/mo), multi-site setup ($2,000). No hourly billing. Email hello@migratelms.com for a quote within 24 hours.