ARTICLE CONTENT:
Complete Guide: Migrating from Kit (ConvertKit) to Keap (Same AccessAlly Site)
⏱️ Estimated Time: 8-12 hours (plus extensive testing)
🛠️ Technical Level: Advanced
💰 Cost Impact: Significant increase – Kit ($9-79/mo) → Keap ($79-159+/mo)
⚠️ MAJOR UPGRADE: Kit is a simple creator tool. Keap is a full business CRM with steep learning curve.
Why This Migration Is Particularly Complex
This is not a typical CRM switch – it’s a platform upgrade:
1. Tag Structure Changes: Kit’s flat tag system → Keap’s categorized tags
2. Feature Gap: Kit limited features → Keap’s extensive CRM capabilities
3. Data Transformation: Kit tags must become Keap custom fields + categorized tags
4. Learning Curve: Keap has reputation for complexity – budget training time
5. Cost: 2-10x price increase depending on contact count
6. Custom Fields: Kit has minimal custom fields → Keap uses underscore prefix (_FieldName)
Common reasons for upgrading from Kit to Keap:
- Need CRM Features: Keap offers deals, pipelines, appointments, tasks
- Business Growth: Outgrown Kit’s simple creator-focused toolset
- Sales Team: Need proper CRM for sales pipeline management
- Advanced Automation: Keap’s campaign builder more powerful than Kit sequences
- Payment Processing: Keap has built-in payment gateway (Kit requires external)
- Client Management: Coaching/service businesses need Keap’s client management
What You’ll Need Before Starting
✅ Required Access & Accounts
- WordPress admin access to your AccessAlly site
- Kit (ConvertKit) admin access (for data export)
- Keap account (must be set up and configured first)
- AccessAlly license that supports CRM switching
- Access to your payment gateway (Stripe or PayPal)
- Budget for training: Keap has 40+ hour learning curve
- Time commitment: 8-12 hours for migration alone
📋 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 Kit subscriber data
- CRITICAL: Complete audit of ALL Kit tags and how they’re used
- Strategic plan for organizing flat tags into Keap categories
- Identify which Kit tags should become Keap custom fields instead
- Document every location where tags are referenced in AccessAlly
- Staging site setup (MANDATORY for this migration)
- Request 2-site exception from AccessAlly support
- Downtime plan (expect 4-6 hour window)
- Member communication plan (login process will change)
Before importing anything, you MUST create a strategic document mapping:
- Which Kit tags become Keap tags (and which category they belong in)
- Which Kit tags should become Keap custom fields instead
- How you’ll handle tag-based logic (tags vs. custom fields)
- How this affects ALL AccessAlly access rules
Phase 1: Pre-Migration Setup (4-6 hours)
Step 1: Set Up and Learn Your Keap Account
Keap is significantly more complex than Kit. Do NOT rush this step.
- Sign up for Keap (choose appropriate tier – $79/mo minimum)
- Complete Keap onboarding training (2-4 hours – don’t skip this)
- Configure basic account setup (company info, timezone, sender email)
- Set up email deliverability (SPF, DKIM records)
- Test email sending (create test campaign)
- Learn Keap’s campaign builder (watch tutorials)
- Understand tag categories concept
- Learn Keap’s custom field system (underscore prefix)
- Explore CRM features (deals, pipelines, tasks)
- Keap University (free training courses)
- Keap Community forums
- Consider hiring Keap consultant for initial setup
- Budget 40+ hours to become proficient with Keap
Step 2: Export Your Data from Kit (ConvertKit)
- Log into your Kit account
- Go to Subscribers → Export
- Select “All Subscribers”
- Choose to include all fields and tags
- Download CSV export
- Also export sequences separately (for reference when rebuilding)
- Document all active forms and their purposes
What’s included in Kit export:
- Email addresses
- First names (Kit doesn’t separate first/last by default)
- Custom fields (Kit has limited custom field support)
- Tags (likely your primary data organization method)
- Subscription date
What’s NOT included:
- Sequences (must be rebuilt in Keap campaigns)
- Forms (must be recreated)
- Email broadcast history
- Visual automation workflows
Step 3: Analyze Your Kit Tag Strategy
This is the most important strategic step. Kit uses tags heavily because it lacks robust custom fields. Keap offers both custom fields AND categorized tags.
Decision framework for each Kit tag:
| If Kit Tag Represents… | In Keap, Use… | Example |
|---|---|---|
| Membership level | Keap tag in “Membership” category | Kit tag “Gold Member” → Keap Membership::Gold Member |
| Purchase history | Keap tag in “Products” category | Kit tag “Bought Course A” → Keap Products::Course A |
| Lead status | Keap custom field (dropdown) | Kit tags “Hot Lead”, “Cold Lead” → Keap field _LeadStatus |
| Interests/preferences | Keap tags in “Interests” category | Kit tag “Interested in SEO” → Keap Interests::SEO |
| Single-value attribute | Keap custom field | Kit tag “Industry: Healthcare” → Keap field _Industry = Healthcare |
| Behavior tracking | Keap tag in “Engagement” category | Kit tag “Clicked Link X” → Keap Engagement::Link X |
Step 4: Create Your Comprehensive Tag & Field Strategy Document
Create a spreadsheet with these columns:
| Kit Tag | Keap Solution | Keap Category (if tag) | Keap Field Name (if field) | Used in AccessAlly? | Migration Impact |
|---|---|---|---|---|---|
| Gold Member | Tag | Membership | N/A | YES – Module access | Update tag name in AccessAlly |
| Lead: Hot | Custom Field | N/A | _LeadStatus (dropdown) | NO – Internal only | Convert tag to field value |
| Bought Course A | Tag | Products | N/A | YES – Order form | Update order form tags |
Step 5: Set Up Tag Categories and Custom Fields in Keap
Create Tag Categories:
- Go to Keap → CRM → Tags
- Click “Add Category”
- Create logical categories:
- Membership (for membership levels)
- Products (for purchase history)
- Interests (for preferences)
- Engagement (for behavior tracking)
- Status (for lead/customer status)
- Within each category, create individual tags
- Use clear, consistent naming
Create Custom Fields:
- Go to Keap → Settings → Custom Fields → Contacts
- Click “Add Custom Field”
- Choose appropriate field type (Text, Number, Dropdown, Date, Checkbox)
- CRITICAL: All custom field names MUST start with underscore: _FieldName
- Example: _MembershipLevel, _SignupDate, _Industry
- Set dropdown options if applicable
- Note the exact field names for CSV mapping
- MUST start with underscore: _FieldName (not FieldName)
- No spaces: _MembershipLevel (not _Membership Level)
- Case-sensitive: _LeadStatus vs _leadstatus are different
- Limit to 40 characters
Step 6: Map Kit Data to Keap Structure
Use the Data Mapping Reference Guide for complete field mappings.
| Kit Field | Keap Field | Notes |
|---|---|---|
| Required | ||
| First Name | first_name | Standard field |
| Last Name (if split) | last_name | May need to split from “First Name” |
| Tags | Tags (with categories) | Flat → Categorized |
| Custom Fields | _CustomField (underscore prefix) | Kit has few, Keap has many |
| Opted In Date | date_created | Optional |
Step 7: Connect Keap to AccessAlly (Staging Site First)
- On your STAGING site, go to AccessAlly → Settings → General
- Change CRM from Kit to Keap
- Enter Keap API credentials:
- App Name (your Keap app ID)
- Encrypted Key (from Keap → Admin → Settings → Application)
- Click Save and Test Connection
- Verify connection successful
Phase 2: Migration Execution (3-5 hours)
Step 8: Prepare CSV for Import
Transform your Kit export to match Keap requirements:
- Open Kit export CSV in Excel or Google Sheets
- Add/rename columns:
- Ensure “email” column exists
- Split “First Name” into first_name and last_name if needed
- Rename custom field columns to Keap format: _FieldName
- Keep tags column, but plan to manually categorize after import
- Save as new CSV: “kit-to-keap-import.csv”
Step 9: Import Contacts via Migration Wizard
- On staging site, go to AccessAlly → Migration Wizard
- Upload your prepared CSV
- Map fields to Keap
- Enable “Create contacts in CRM”
- Enable “Apply tags”
- Start import
What happens:
- Contacts created in Keap
- Tags applied (initially as flat tags)
- Custom fields populated
- Contact IDs linked in WordPress
Step 10: Organize Tags into Categories in Keap
This is manual work but critical:
- Go to Keap → CRM → Tags
- View all imported tags (they’ll appear as uncategorized)
- Drag each tag into its appropriate category
- Follow your strategy document from Step 4
- Verify tag names are correct
After categorizing, tag names will include category prefix:
- “Gold Member” becomes “Membership::Gold Member”
- “Bought Course A” becomes “Products::Course A”
- “Interested in SEO” becomes “Interests::SEO”
Step 11: Convert Appropriate Tags to Custom Field Values
For Kit tags that should become Keap custom fields (from your Step 4 strategy):
- Identify contacts with specific Kit tags
- Use Keap’s bulk update to set custom field values
- Example: Contacts with “Lead: Hot” tag → set _LeadStatus = “Hot”
- Remove the old tags after field values are set
- Use Keap campaigns or rules to automate this if many contacts
Step 12: Update ALL AccessAlly Tag References
This is the most time-consuming step. Every tag reference in AccessAlly must be updated to match new Keap tag names (with category prefixes) or converted to custom field logic.
- Go to each AccessAlly Module with tag-based access
- Update tag names to include category prefix (e.g., “Membership::Gold Member”)
- Update protected page access rules
- Update order form tag assignments
- Update email wizard tag triggers
- Update automation trigger rules
- Update membership level tag associations
For tags converted to custom fields:
- Update AccessAlly logic to check custom field values instead of tags
- May require using AccessAlly shortcodes or conditional logic
- Test thoroughly – custom field logic works differently than tags
Step 13: Link Payment Gateway Subscriptions
- Export active subscriptions from Stripe or PayPal
- Match to member emails
- Verify subscription IDs stored correctly in AccessAlly
- Test failed payment handling
Detailed subscription migration guide
Step 14: Rebuild Kit Sequences as Keap Campaigns
Kit sequences must be rebuilt in Keap’s campaign builder:
| Kit Feature | Keap Equivalent | Notes |
|---|---|---|
| Sequence | Campaign | More powerful, steeper learning curve |
| Tag trigger | Campaign entry trigger | Update to use categorized tag names |
| Timed emails | Sequence with delays | Similar concept |
| Automation rules | Campaign logic (if/then) | More sophisticated options |
| Visual automation | Campaign builder | Keap builder is more complex |
- Lead Scoring: Use Keap’s built-in lead scoring
- Sales Pipeline: Move qualified leads into sales pipeline
- Appointment Scheduling: Use Keap appointments for sales calls
- Task Management: Assign follow-up tasks to team
- Goals: Use campaign goals for more sophisticated automation
Step 15: Update Forms
Replace Kit forms with Keap or AccessAlly forms:
Option 1: Use Keap Forms
- Create forms in Keap
- Embed on WordPress pages
- Set up tag assignments (with categories)
Option 2: Use AccessAlly Forms (Recommended)
- Better WordPress integration
- Submit to Keap via API
- More styling control
- Update tag assignments to use categorized tags
Phase 3: Go-Live and Verification (3-4 hours)
Step 16: Extensive Staging Testing
Because this is a major platform upgrade, testing is CRITICAL:
- ✅ Test login for members with different membership levels
- ✅ Verify EACH membership level can access correct content
- ✅ Check EVERY module access rule works
- ✅ Test EVERY protected page
- ✅ Verify forms submit and apply correct categorized tags
- ✅ Test purchase flow end-to-end
- ✅ Verify automation campaigns fire correctly in Keap
- ✅ Test subscription linking and failed payment handling
- ✅ Verify custom field logic works correctly
- ✅ Test new Keap features (pipelines, tasks, appointments)
Step 17: Switch Live Site to Keap
Only after staging tests pass completely:
- Schedule 4-6 hour downtime window (longer than typical CRM switch)
- Put site in maintenance mode
- Create fresh backup
- Export final Kit data (catch any new subscribers since staging)
- Switch AccessAlly to Keap (same steps as staging)
- Import any new contacts
- Categorize new tags in Keap
- Update ALL tag references (again, on live site)
- Test access for multiple membership levels
- Take site out of maintenance mode
- Monitor intensely for first 2-4 hours
Step 18: Complete Post-Migration Verification
Work through the Post-Migration Verification Checklist.
Kit → Keap specific checks:
✅ Tag Structure Verification
- All tags organized into appropriate categories
- Tag names include category prefixes in AccessAlly rules
- No orphaned uncategorized tags
- Tag-converted-to-fields working correctly
✅ Custom Fields Verification
- All custom fields use underscore prefix
- Field values populated correctly
- AccessAlly logic using fields (not tags) works
✅ Contact ID Linking (CRITICAL)
- Random sample of 10 contacts – verify Contact IDs match
- Test tagging in Keap grants access in AccessAlly
- Test removing tag removes access
✅ New Keap Features
- Sales pipeline configured (if using)
- Appointment scheduler working (if using)
- Task assignments functioning (if using)
- Lead scoring active (if using)
The #1 issue with CRM switches is Contact ID mismatches. Test this:
- Pick a random member from WordPress
- Check their user meta for “keap_contact_id”
- Search Keap for that Contact ID
- Verify it’s the correct contact
- Test that applying a categorized tag in Keap grants access in AccessAlly
If Contact IDs are wrong, members will lose access even if they have correct tags.
Step 19: Member Communication
Your members may notice changes – communicate proactively:
Subject: We’ve upgraded our member system
Hi [First Name],
We’ve upgraded to a more powerful business system to serve you better. Your account has been transferred and all your content access remains the same.
What’s changing:
- Our backend system (Keap) is more robust
- Your login and content access are unchanged
- You may need to reset your password (use “Forgot Password” if needed)
What’s NOT changing:
- Your membership level and benefits
- Your content access
- Your billing (unless you’re on the same subscription)
Questions? Reply to this email.
Step 20: Monitor for 14 Days (Extended Period)
Due to complexity, monitor for TWO weeks instead of one:
- Days 1-3: Immediate access issues and login problems
- Days 4-7: Tag-related access issues, category prefix problems
- Days 8-14: Subscription/payment issues, automation issues, Keap learning curve issues
Keep Kit active for 30 days as a safety net.
Troubleshooting Common Issues
Issue 1: Members Have Tags But Can’t Access Content
Symptoms: Members have correct tags in Keap but getting “insufficient permissions” errors
Causes:
- AccessAlly access rules reference old Kit tag names (flat tags)
- Tag names in Keap have category prefixes, but AccessAlly rules don’t
- Case sensitivity mismatch
- Contact ID linking issue
Solution:
- Check the member’s tags in Keap (note exact spelling with category prefix)
- Go to the module or page they can’t access
- Check “Who Can Access” settings
- Update tag name to EXACTLY match Keap (including “Category::” prefix)
- Test access again
Issue 2: Confused About Tag Categories vs. Tags
Symptoms: Not sure how to reference categorized tags in AccessAlly
Solution:
- In Keap, tags display as “Category::TagName”
- In AccessAlly, reference them the same way: “Membership::Gold Member”
- The “::” separator is important
- Category is not optional – must include full name
Issue 3: Custom Fields Not Working in AccessAlly
Symptoms: Custom field values set in Keap but not recognized in AccessAlly
Causes:
- Field name doesn’t have underscore prefix
- Field name capitalization mismatch
- AccessAlly trying to use it as a tag instead of field
Solution:
- Verify field name in Keap starts with underscore: _FieldName
- Check exact capitalization
- In AccessAlly, use custom field logic (not tag logic)
- Test with a single contact first
Issue 4: Overwhelmed by Keap Complexity
Symptoms: Can’t figure out how to build campaigns or use Keap features
Solution:
- This is normal – Keap has steep learning curve
- Take Keap University courses (free)
- Join Keap Community forums
- Consider hiring Keap certified consultant for training
- Budget 40+ hours to become proficient
- Don’t try to use all features at once – start simple
Issue 5: Kit Sequences Not Working in Keap
Symptoms: Automated emails not sending as expected
Causes:
- Kit sequences weren’t rebuilt in Keap campaigns
- Campaign triggers reference old flat tags (not categorized)
- Campaign not published/activated in Keap
Solution:
- Verify campaign is published in Keap
- Check entry trigger uses categorized tag name
- Test manually triggering campaign with test contact
- Review Keap campaign builder tutorials if needed
Issue 6: Need to Rollback to Kit
If critical issues occur:
- Change AccessAlly CRM connection back to Kit
- Re-enter Kit API credentials
- Verify connection
- Test member access (should restore with original tag names)
- Contact AccessAlly support for migration help
- More than 50% of members reporting access issues
- Unable to resolve tag categorization issues within downtime window
- Critical subscription/payment issues
- Team overwhelmed by Keap complexity
Leveraging New Keap Features
Now that you’ve upgraded from Kit’s simple toolset to Keap’s full CRM, take advantage of features you didn’t have before:
Sales Pipeline Management
- Move qualified leads through sales stages
- Track deals and revenue forecasting
- Assign follow-up tasks to sales team
- Use pipeline reports for sales analytics
Appointment Scheduling
- Embed appointment calendar on your site
- Automate appointment reminders
- Sync with Google Calendar
- Use for sales calls, onboarding, coaching
Advanced Segmentation
- Use custom fields + categorized tags for sophisticated segmentation
- Create saved searches for complex contact queries
- Build dynamic lists based on behavior + attributes
Task Management
- Assign follow-up tasks to team members
- Automate task creation via campaigns
- Use for client onboarding checklists
Lead Scoring
- Score leads based on behavior (email opens, page visits)
- Trigger sales follow-up when score threshold reached
- Focus on hottest leads first
Migration Timeline
Total Time Estimate: 8-12 hours (plus ongoing Keap learning)
| Phase | Time | Notes |
|---|---|---|
| Keap Learning & Setup | 2-4 hours | Don’t rush this – critical foundation |
| Tag Strategy Document | 2-3 hours | Most important strategic step |
| Data Export & Mapping | 1 hour | Standard export |
| Keap Tag Categories & Fields Setup | 1-2 hours | Manual but essential |
| Staging Setup & Import | 2-3 hours | Includes tag categorization |
| Update ALL Tag References | 3-5 hours | Most tedious step |
| Rebuild Sequences as Campaigns | 2-4 hours | Learning curve involved |
| Extensive Testing | 3-4 hours | Test EVERY access rule |
| Live Site Switch | 4-6 hours | Downtime required |
| Ongoing Keap Mastery | 40+ hours | Budget 3-6 months to master |
Cost Comparison: Kit vs. Keap
Ensure you’re prepared for the cost increase:
| Contact Count | Kit Cost | Keap Cost | Increase |
|---|---|---|---|
| 0-1,000 | $9-29/mo | $79-129/mo | ~$50-120/mo |
| 1,000-5,000 | $29-79/mo | $129-199/mo | ~$50-170/mo |
| 5,000-10,000 | $79-99/mo | $199-299/mo | ~$100-220/mo |
| 10,000+ | $99+/mo | $299+/mo | ~$200+/mo |
Keap is worth the cost if you use:
- Sales pipeline and deal tracking
- Appointment scheduling
- Task management for team
- Advanced CRM features
- Lead scoring
Keap may be overkill if you only:
- Send email broadcasts
- Manage membership tags
- Run simple sequences
- Have no sales team
Should You Hire Professional Help?
Consider professional migration assistance if:
- You have 100+ Kit tags to categorize and remap
- You have complex tag-based access rules across many modules
- You have 1,000+ active members
- You can’t afford 4-6 hours of downtime
- You’re not comfortable with Keap’s complexity
- Your business can’t tolerate access issues
- You want to leverage Keap’s advanced features correctly from day 1
Professional help can:
- Develop optimal tag categorization strategy
- Automate tag remapping via scripts
- Set up Keap campaigns correctly first time
- Configure pipelines and advanced features
- Reduce downtime to 1-2 hours
- Provide Keap training for your team
- Minimize member-facing issues
Contact AccessAlly support to discuss migration assistance and Keap setup consulting.
Need Help?
Related Guides:
- Pre-Migration Checklist
- Post-Migration Verification
- Data Mapping Reference
- How to Migrate CRMs
- Keap → ActiveCampaign (reverse migration if needed)
External Resources:
- Keap University (free courses)
- Keap Community forums
- Keap API documentation
- Keap certified consultants directory
- ✅ Keap account set up and understood
- ✅ Tag strategy document completed
- ✅ ALL Kit tags organized into Keap categories
- ✅ Custom fields created with underscore prefix
- ✅ Contacts imported to Keap with tags
- ✅ Tags categorized correctly in Keap
- ✅ Appropriate tags converted to custom field values
- ✅ Contact IDs properly linked in WordPress
- ✅ ALL AccessAlly tag references updated with category prefixes
- ✅ EVERY module access rule tested individually
- ✅ EVERY protected page tested
- ✅ Forms working with categorized tag names
- ✅ Kit sequences rebuilt as Keap campaigns
- ✅ Subscriptions linked and tested
- ✅ No member access complaints after 14 days
- ✅ Team trained on Keap basics
- ✅ Plan to master advanced Keap features over 3-6 months