Code export · Bubble

There is no Bubble code export, and that changes your options

Export policy checked on September 2026

What comes out

What Bubble actually exports.

This is the honest starting point: Bubble exports data, not code. There is no button, plan or workaround that hands you the running application as source. What you can take with you is the contents of your database.

  • Your data — CSV / JSON / NDJSON

    Export any data type from the editor. Large datasets are better pulled through the Bubble Data API than the one-off export.

  • A copy of the design (on request)

    Bubble will help export your app's design if you leave — but a design is a reference, not runnable code.

  • No front-end code

    There is no exportable HTML, CSS, JavaScript or framework source for the pages and elements you built.

  • No back-end code

    Workflows, API workflows and the database schema don't come out as code or runnable migrations — you get data rows, not an executable app.

How the export works: In the editor, open Data → App data, pick a data type, configure the view and choose Export (CSV, JSON or NDJSON). Bubble emails a download link; because exports share the same queue as API workflows, a large export can be delayed behind heavy scheduled tasks.

The gap

What the export does not include.

Because nothing runnable comes out, the "gap" here is the entire application. That's why leaving Bubble is framed as a rebuild — the value you carry across is your data and your product knowledge, not a codebase.

  • The whole front end

    Every page, element and responsive rule you built lives in Bubble's editor format. There is no export that reconstitutes it as code, so the interface has to be rebuilt in whatever stack you move to.

    BlockerSources: [1]
  • All workflow and API logic

    Bubble's visual workflows — the logic that makes the app do anything — can't be exported as code. A rebuild re-implements that logic; the exported data gives you the shapes, not the behaviour.

    BlockerSources: [1]
  • A runnable database schema

    You get data rows in CSV/JSON, not an executable schema with types, relationships and indexes. Rebuilding means designing a proper Postgres schema and importing the data into it — a reconciliation step, not a restore.

    MajorSources: [2]
  • Third-party "converters" are not an official export

    Tools and agencies that advertise "Bubble to code" conversion are not sanctioned Bubble exports — they rebuild the app, with varying fidelity. Treat their output as a rebuild to review, not a guaranteed one-to-one lift.

    Minor

The real question

Is the exported code maintainable?

Bubble export:No code to assess

There's no exported code to assess, so the real question is data portability, and there Bubble is fine: you can get your records out cleanly as CSV/JSON/NDJSON or through the Data API, which is exactly what a rebuild needs to import. What you can't carry is the application itself — the front end and the workflow logic have to be re-implemented in owned code. The upside of a rebuild is that the result is a standard codebase you can host, test and hire for, with none of the workload-unit metering or the 50k-record search cliff you were leaving behind.

Your options

What to do with the export.

Three honest routes. The right one depends on how far the app has to go and who is going to own the code once it gets there.

  1. 01

    Stay on Bubble

    Keep running on Bubble. For many apps that's the right call — the platform is productive and the lock-in only bites past a certain scale.

    Right when the app is working, traffic is modest, and Workload-Unit costs and record limits aren't hurting yet.
    Wrong when your bill scales with usage you can't control, or you've hit the search-performance ceiling.
  2. 02

    Export the data, rebuild the app

    Take your data out via CSV/JSON/the Data API and rebuild the application as owned code — typically Next.js + Postgres — importing and reconciling the data.

    Right when you need to own the code, control hosting, or escape usage-based pricing.
  3. 03

    Rebuild in phases

    Move the highest-risk or highest-cost part first (a heavy workflow, a data-hungry feature) while Bubble keeps running, then cut over the rest.

    Right when the app is business-critical and a big-bang rewrite is too risky to attempt at once.
What you won’t find elsewhere

Straight from Bubble's own documentation

It's worth quoting the source rather than paraphrasing it, because this one sentence is the whole argument: "Bubble apps can only be run on the Bubble platform; there's no way of exporting your application as code." Bubble is unusually candid about it — the same page notes that if the company itself were to shut down, it pledges to open-source its own platform. That clause is about Bubble's code, not yours. Your app is still not exportable; leaving is still a rebuild.

Code export
None
Data export
CSV / JSON
Leaving =
Rebuild
Source
manual.bubble.io

Sources: [1]

FAQ

Questions people actually ask.

Can you export the source code from a Bubble app?
No. Bubble's documentation states plainly that apps can only run on the Bubble platform and there is no way to export the application as code. You can export your data, and Bubble will help export a copy of the design, but the running app — front end and logic — does not come out as source.
Do you own your Bubble app and your code?
You own your data and your intellectual property, but there is no code to own in a portable sense — the app exists only inside Bubble. That's the distinction the whole ownership question turns on: owning the idea and the data is not the same as owning a codebase you can take elsewhere.
What can you actually export from Bubble, and in what format?
Your application data, as CSV, JSON or NDJSON, from Data → App data → Export (Bubble emails a download link). For large datasets the Data API is more reliable than the one-off export, which can queue behind scheduled tasks. That data is exactly what you'd import into a rebuilt app.
What happens to my app if Bubble shuts down?
Bubble pledges that if the company shut down it would release its own platform's source under an open-source license. That protects the platform, not a portable copy of your app — you still couldn't hand your app to a developer as code today. It's a lock-in mitigation, not an export path.
How do I move a Bubble app to real code?
Export your data, then rebuild the application in an owned stack (commonly Next.js + Postgres), re-implementing the workflows and importing the data with a reconciliation pass. It's a rebuild rather than a conversion — which is also the chance to leave behind Workload-Unit pricing and the record-search ceiling.

Every builder, one table

Code export across the hub, at a glance.

The same status table on every export page. “Exports” means real, usable source comes out; “partial” means a major layer is missing; “none” means no source export at all. The nuance is on each page.

PlatformCode exportWhat you get
LovableExports codeReact repo via GitHub
Base44Partial exportFront end; backend locked
WebflowPartial exportFront end only, no CMS
FlutterFlowExports codeDart / Flutter source
FramerNo code exportHost-only, no export
Bolt.newExports codeProject files / GitHub
BubbleThis pageNo code exportNo source export
ReplitExports codeFull code, you own it
SoftrNo code exportNo code (data only)
GlideNo code exportNo code (data only)
AdaloNo code exportNo source export
RetoolPartial exportSelf-host, not source
XanoPartial exportAPI portable, no export

Sources

Every claim, traced to a primary source.

The numbered references in the body link here. We cite vendor docs, pricing pages, changelogs and named reporting — dated where the document is dated, so the page can be re-audited each quarter.

  1. [01]
  2. [02]
    Exporting data — CSV, JSON and NDJSON

    Bubble Docsmanual.bubble.io

Own the Bubble app outright?

We’ll map the route to code you actually own.

Book a call with Jackson, our Growth Partner — he’ll walk your export or app, the gaps that matter, and a fixed-price plan to get it production-ready, live on your screen. Or get an instant estimate first.

Or see fixed-price migration packages and how we work.