|
/ Documentation /Migration to SureRank/ Migration Failed: How to Diagnose

Migration Failed: How to Diagnose

Migration from another SEO plugin runs as many small requests, one per post or term, so a failure usually affects a single item rather than the whole import. This is the same generic 15-second timeout or JSON error described in Article 5, just showing up in a migration context.

Why This Happens

  • Migration is paginated by design. Each REST request imports one item (post or term) at a time, in batches of 100. Because it’s properly paginated, a single failed request shouldn’t corrupt the whole migration.
  • The same 15-second client-side timeout applies. This shared timeout also governs migration requests. A slow server response, a caching plugin serving a cached non-JSON page instead of the live response, or a code-snippet/optimization plugin altering output can all trigger the “not a valid JSON response” message.
  • Detection has a gap. SureRank already detects 25+ common caching and optimization plugins and warns before migration starts, but this list doesn’t currently include code-snippet plugins like WPCode, so that class of conflict isn’t flagged automatically.
  • Squirrly is a known exception. Migrating from Squirrly specifically can be slower on large sites because of how its importer builds the post list, which increases the odds of hitting the timeout.

Steps To Try

  • Note the exact error and which import step it happened on (Yoast, Rank Math, etc., posts vs. terms vs. settings).
  • If SureRank shows a caching plugin warning before you start, temporarily deactivate that plugin (and any code-snippet plugin like WPCode) for the duration of the migration.
  • Click Try Again. Since migration is per-item, retrying only re-runs what failed; already-imported items aren’t duplicated or lost.
  • For large sites migrating from Squirrly specifically, expect the process to take longer. Running it during low-traffic hours can help.
  • If it keeps failing, add define(‘SURERANK_DEBUG’, true); to wp-config.php and check the server error log for specifics during the next attempt.

If That Doesn’t Work

Contact our Support Team source plugin being migrated from, the failing step, and (if available) the SURERANK_DEBUG log output.

Was this doc helpful?
What went wrong?

We don't respond to the article feedback, we use it to improve our support content.

Need help? Contact Support
Table of Contents
Scroll to Top