Every migration has an implicit size envelope. Knowing your project's shape ahead of time — rows, users, files, total bytes — is the difference between a smooth run and a surprise mid-cutover.
Why migration size matters
Size affects duration, memory pressure, network throughput, and how much time you need for verification. It also determines whether a project fits inside private beta limits or needs a manual review.
Database row counts
Row counts drive schema migration duration and validation time. Long tables benefit from batched copies and post-migration sequence resets.
Auth user counts
Auth migrations are relatively fast per user but sensitive to ID preservation. Larger user bases increase the risk of collisions if IDs are regenerated by accident.
Storage file counts
File counts affect the number of individual API calls a migration needs to make. Many small files can be more expensive than a few large ones.
Total storage size
Total bytes influence throughput and cost. Estimate before the run so the destination plan supports the incoming volume.
Single storage file size
Very large single files can trip per-request limits. Split, chunk, or handle them out-of-band when they exceed the platform maximum.
How limits help during private beta
Current Miglify private beta limits keep runs predictable:
- Database rows: 100,000
- Auth users: 10,000
- Storage files: 10,000
- Total storage size: 5 GB
- Single storage file size: 100 MB
When larger projects need manual review
Projects that exceed these limits are not unsupported — they need a short manual review so the team can plan a safe run together. Request review through the /beta page.
How to prepare a smaller first test
- Start with a staging project that mirrors production schema.
- Migrate a representative subset of rows, users, and files.
- Run verification end to end before scaling up.
How Miglify handles private beta limits
Miglify surfaces limit status in the Detected Resources card during setup. When a project exceeds the current beta envelope, the Confirm step switches to "Approval required" so nothing runs without a plan.
Read the Supabase to Supabase Migration guide next, and visit the /beta page to request access or a manual review.
Final thoughts
Measure before you migrate. A ten-minute inventory turns unknown risk into a known plan — and lets the team choose the right size for a first test run.
Miglify keeps every step observable — analyze source, validate destination, and prepare rollback-aware runs before you cut over.
