The migration error usually means Solid Central failed to transfer your license keys or plugin settings to the new Kadence Central hub. Go to Dashboard → Solid Central, click Retry Migration, then deactivate and reactivate the plugin. If that does not work, disconnect your Kadence account, clear any transient cache, and reconnect. Full step-by-step is below.
So you updated Solid Central and now you’re staring at a red “Migration Failed” notice in your WordPress dashboard. Frustrating, and honestly a bit confusing — especially because Solid Central quietly rebranded to Kadence Central mid-2025, and not every piece of documentation caught up with that change. If you’re seeing errors that reference both names in the same screen, that is why.
I ran into this myself on a client site running Kadence Theme with several premium add-ons. The migration screen froze, threw a nondescript error, and left the plugin dashboard in a half-migrated state. Here is what I found after digging through the database, plugin files, and Kadence’s support threads.
What Is Solid Central — and Why Did It Become Kadence Central?
Solid Central was the license and update management plugin that shipped with Kadence products. In late 2024, Kadence WP announced they were consolidating all their tools under a unified hub called Kadence Central. The plugin remained mostly the same under the hood, but the name, UI, and some internal data storage keys changed.
The migration that the plugin runs automatically is supposed to move your stored license data, connected account info, and plugin preferences from the old Solid Central format to the new Kadence Central format. When it fails, your licenses may appear unregistered, plugin updates stop showing up, and in some cases the Kadence dashboard throws a white screen or a PHP fatal error.
Solid Central rebranded to Kadence Central in 2024 — the migration process is what causes most of these errors.
Why Does the Migration Fail?
There are a handful of real reasons this breaks. Understanding which one applies to you makes the fix a lot faster.
Most Reported Causes of Migration Failure
Based on community-reported issues in the Kadence WP support forums, 2025–2026
1. Stale Transients in the Database
WordPress stores temporary data as “transients” in the wp_options table. Solid Central used its own transient keys to cache license status. When the migration runs, it tries to write new keys under the Kadence Central namespace — but if old transients are still locked, the write fails silently and the process errors out.
2. Expired API Token
Your Kadence account connection uses a token. If that token expired before the migration kicked off (say, you hadn’t logged into your Kadence account for several months), the migration can’t verify your licenses server-side and fails at that handshake step.
3. Database User Permissions
On some managed hosting plans — WP Engine is a common one — the MySQL database user has restricted ALTER TABLE or INSERT permissions. The migration script may need to create a new database row, and if the DB user lacks that permission, it fails with a generic PHP error rather than a useful message.
4. Plugin or Theme Conflicts
Security plugins like WordFence or iThemes Security sometimes block the external API calls that Kadence Central makes during migration. The plugin pings Kadence’s license server, and if that outbound request is blocked, the migration times out.
The Step-by-Step Fix
Take a full site backup first. These steps involve deactivating plugins and touching the database. A backup takes two minutes and can save you a lot of pain if something unexpected happens.
Migration Fix Workflow
Fix 1: Retry the Migration from the Plugin Dashboard
In your WordPress admin go to Dashboard → Solid Central (or Kadence Central if already renamed). Look for a yellow or red migration notice at the top of the screen.
If the notice is present, there is usually a “Retry” link. Click it, wait 30 seconds. If it shows a success message, you are done.
Go to Plugins → Installed Plugins, deactivate Solid Central / Kadence Central, wait 10 seconds, then reactivate it. Reactivation triggers the migration hook again from scratch.
Fix 2: Clear Transient Cache
This is the most effective fix for the majority of cases. You can do it three ways:
Option A — Using WP-CLI (fastest):
Option B — Using a plugin: Install Transients Manager or WP-Optimize, go to the transients section, delete all expired transients, then delete all transients. Re-run the migration afterward.
Option C — Manually in phpMyAdmin:
Replace wp_ with your actual table prefix if it differs. If you’re not confident with SQL, use Option A or B.
Fix 3: Disconnect and Reconnect Your Kadence Account
Find the Account or License tab inside the plugin settings.
This removes the stored API token without deleting your license keys from Kadence’s servers.
Visit kadencewp.com, log in, and regenerate your API key from My Account → API Keys if needed.
Paste the API key or use the “Connect Account” button in Solid Central. Once connected, the migration should re-run automatically on page reload.
Using Kadence Theme Pro?
Make sure your license is active before running any migration to avoid auth failures mid-process.
Check Your Kadence LicenseFix 4: Check for Plugin Conflicts
This one takes a bit more patience, but it matters if the fixes above haven’t worked.
WordFence, Sucuri, iThemes Security — whichever you use, deactivate it temporarily. Then retry the Kadence Central migration.
Some hosts (especially managed ones) block outbound HTTP requests by default. Ask your host to whitelist api.kadencewp.com on port 443.
On rare occasions, a heavily customized Kadence child theme with a functions.php conflict can interfere. Switching to a plain theme rules this out quickly.
Fix 5: Increase PHP Memory Limit
If you’re seeing “Allowed memory size exhausted” in your PHP error log around the same time the migration fails, this is your issue. Add this to your wp-config.php file, just above the line that says /* That's all, stop editing */:
You can also set it in your .htaccess or php.ini if your host allows it:
Comparison: What Each Fix Addresses
| Fix | What It Solves | Difficulty | Time Required | Works Without Hosting Access |
|---|---|---|---|---|
| Retry Migration Button | Temporary glitch or network timeout | Easy | 1 min | ✓ |
| Clear Transient Cache | Stale cached license data | Easy–Medium | 5 min | ✓ |
| Reconnect Kadence Account | Expired or invalid API token | Easy | 3 min | ✓ |
| Disable Security Plugin | Blocked API requests | Easy | 5 min | ✓ |
| Whitelist API Domain with Host | Host-level firewall blocking outbound calls | Medium | 15–30 min | ✗ |
| Increase PHP Memory Limit | Script running out of memory mid-migration | Medium | 5 min | Partial |
| Manual DB Transient Delete (SQL) | Deep stale cache the plugin can’t clear itself | Medium | 10 min | ✗ |
What If Nothing Works? Manual Migration as a Last Resort
If you have tried everything above and the migration still fails, you can manually recreate what the migration does. This is not documented officially but it works — I’ve done it twice.
The migration essentially does three things: renames certain wp_options keys from the solid_central_ prefix to the kadence_central_ prefix, updates the version flag, and marks migration as complete. You can do this manually in phpMyAdmin.
Filter by option_name LIKE 'solid_central_%' to see all relevant rows.
You will be recreating these with the new prefix. Common keys include solid_central_license_data and solid_central_connected_account.
Create new rows with names like kadence_central_license_data, copying the exact same serialized value.
Insert or update kadence_central_migration_complete with a value of 1.
The migration notice should be gone. Verify that your licenses show as active.
Exact option key names may differ slightly depending on your version of Solid Central. Check the source code in wp-content/plugins/solid-central/includes/ if you need to confirm them. Look for a file named something like class-migration.php.
Pros and Cons of Each Approach
✅ Quick Plugin-Level Fixes
- No server access required
- Reversible without risk
- Works on most standard hosts
- No database knowledge needed
- Solves 70%+ of cases
❌ Limitations
- Won’t fix host-level firewall blocks
- Can’t overcome DB permission restrictions
- Retry option not always present
- Generic error messages make diagnosis hard
- Manual DB fix risks data corruption if done wrong
Common Error Messages and What They Mean
| Error Message | Most Likely Cause | First Fix to Try |
|---|---|---|
| “Migration Failed” (generic) | Transient cache conflict or token expiry | Clear transients, reconnect account |
| “Unable to connect to license server” | API call blocked by security plugin or host firewall | Disable security plugin temporarily |
| “Invalid API response” | Expired Kadence API token | Reconnect Kadence account with fresh key |
| “Fatal error: Allowed memory size of X bytes exhausted” | PHP memory limit too low for migration script | Increase PHP memory to 256M in wp-config.php |
| “Could not update options table” | Database user lacks INSERT/UPDATE permissions | Contact host to grant full DB user permissions |
| White screen / blank admin page | PHP fatal error during migration, debug mode off | Enable WP_DEBUG, check error log for exact cause |
How to Enable Debug Mode to Find the Exact Error
If you’re getting a white screen or a vague error message, turning on WordPress debug mode gives you the actual PHP error. Add these lines to wp-config.php:
After adding these lines, repeat the migration steps. Then check wp-content/debug.log for the actual error message. That log entry will usually point you directly to what line of code failed and why. Once you’ve identified and fixed the issue, remember to set WP_DEBUG back to false.
Still Stuck? Kadence’s Support Team Is Solid
If none of these fixes resolve your migration error, open a ticket directly with Kadence WP support. Include your debug log. They respond quickly for license holders.
Open a Kadence Support TicketPreventing the Error in the Future
Once you’re past this, there are a few things that reduce the chance of it happening again during the next major plugin update.
Older PHP versions have lower default memory limits and less efficient object handling. Both can trip up migration scripts.
WP-Optimize or a similar tool set to weekly transient cleanup prevents the stale cache buildup that causes most migration failures.
Bulk-updating Kadence Theme, Kadence Blocks, and Solid Central simultaneously can cause a race condition where the migration tries to start before all plugin files are fully loaded.
Log into kadencewp.com at least once every few months so your API token doesn’t expire before the next update cycle.
Quick Summary: The Order of Fixes to Try
| Priority | Action | Where | Expected Outcome |
|---|---|---|---|
| 1st | Click Retry Migration | Solid Central dashboard | Fixes temporary network/timeout issues |
| 2nd | Deactivate & reactivate plugin | Plugins screen | Resets migration hook |
| 3rd | Clear all transients | WP-CLI or DB | Removes stale cache blocking migration |
| 4th | Disconnect & reconnect Kadence account | Plugin settings | Refreshes API token |
| 5th | Disable security plugins | Plugins screen | Unblocks outbound API calls |
| 6th | Increase PHP memory limit | wp-config.php | Prevents script exhaustion mid-migration |
| 7th | Enable debug mode, read log | wp-config.php + debug.log | Identifies exact cause for targeted fix |
| 8th | Manual DB option migration | phpMyAdmin | Bypasses broken migration script entirely |
Final Thoughts
The Solid Central to Kadence Central migration error is one of those things that looks alarming but usually has a straightforward fix. Clearing transients and reconnecting your Kadence account will resolve it for most people in under five minutes. The trickier cases involve host-level restrictions or PHP configuration issues, and those are worth contacting your host about rather than spending hours troubleshooting alone.
The rebranding from Solid Central to Kadence Central added a layer of confusion that didn’t need to exist — especially for users who hadn’t touched their dashboard in a while. If you’re seeing both names referenced in the same error screen, just know they’re the same plugin at different points in its lifecycle. The fixes are identical regardless of which name shows in your dashboard.
If you found a different fix that worked for your setup, or if you’re seeing an error message that isn’t covered here, the comments are open. Plugin issues like this one tend to have site-specific quirks, and real-world data from other WordPress users is usually more useful than anything in the official docs.