Articles
Practical writing from inside unbub.dev. Product notes, implementation details, and pages built to answer specific Bubble migration questions clearly.
Practical writing from inside unbub.dev. Product notes, implementation details, and pages built to answer specific Bubble migration questions clearly.
Migrating data out of Bubble goes far beyond CSV export or the Data API. The hard part is rebuilding schema, files, auth, Privacy Rules, and syncs correctly in Supabase.
Read moreJUN 2026Bubble lets you store lists of custom data types very easily, but that abstraction does not map directly to a proper relational model in Postgres. That matters when you migrate.
Read moreJUN 2026Migrating Bubble users is not just about copying the User table. Bubble abstracts the authentication layer behind it, and that changes what a real user migration needs to handle.
Read moreMAY 2026Bubble does not provide a dedicated row-count endpoint, but its Data API response gives you enough information to calculate the total rows visible to a request.
Read moreMAY 2026Bubble does not expose user passwords through the Data API or the Editor. That means a migration can move user records, but not their original passwords.
Read moreAPR 2026Bubble file and image fields do not come out of exports as actual files. They come out as URLs, which means a real migration needs to move the underlying assets and update those references.
Read moreMAR 2026Bubble Unique IDs are not UUIDs. They are system-generated strings, and that matters when deciding how to migrate them or reproduce the same format when leaving Bubble.
Read moreMAR 2026Bubble does not provide a built-in way to export Option Sets, so once your app depends on many of them, manual work becomes inconvenient very quickly.
Read moreFEB 2026Bubble geographic address fields are not plain strings. They contain structured location data, which matters when deciding how to migrate them into Postgres.
Read more