Budibase is an open-source platform for internal apps, automations, and agents, with a built-in database and SQL connectors. Luna Park builds complete applications, internal or customer-facing, with their own backend and database, compiled to Vue and Node.js code.

- **Any audience.** Customer apps with your design, users, and domain.
- **Standard code.** Vue and Node.js you can run without Luna Park.
- **Flat price.** One license, whatever your traffic or users.

![Sunset Park in the Luna Park editor](https://luna-park.app/static/assets/builder-DAXbtfYB.png "Sunset Park, a demo site built with Luna Park: your own design, not a set of ready-made screens.")


## At a glance

Both build apps on a built-in database. The main differences: audience, code export, and pricing.

| | Luna Park | Budibase |
|---|---|---|
| **Made for** | SaaS, portals, internal tools | Internal apps and automations |
| **Interface** | Your own components, CSS, design tokens | Ready-made screen components |
| **Logic** | Visual scripting graphs, front and back | Bindings, button actions, automations |
| **Database** | [+PostgreSQL] Joins, aggregates, transactions | [+Built-in] Budibase DB, SQL connectors ([source](https://docs.budibase.com/docs/data-sources)) |
| **Code export** | [+Vue + Node.js source] (Pro) | [~Budibase export] ([source](https://docs.budibase.com/docs/export-and-import-apps)) |
| **Open source** | [-No] | [+GPLv3] Pro features under BSL ([source](https://github.com/Budibase/budibase)) |
| **Hosting** | [+Anywhere] Managed hosting in late 2026 | [+Cloud or self-hosted] |
| **Pricing** | Free, or Pro at €25/month or €300 once | Free self-hosted, cloud billed by actions ([source](https://budibase.com/pricing/)) |

## Example: a waitlist form

Visitors enter their name, email, and favorite ride, and get a ticket number.

::: columns
### Luna Park

1. Place the fields and a button, in the site's design.
2. On click, a graph sends the fields to a backend route and shows the ticket.
3. The route inserts a row in the `Waitlist` table and returns its id.

---

### Budibase

1. Create a table with an auto ID column.
2. Add a public screen with a form.
3. Create an automation with a "Create Row" step.
4. Trigger it from the form's button.
:::

::: gallery
![The click logic of the waitlist form](https://luna-park.app/static/assets/logic-C66duI84.png "On click: read the fields, call the route, show the ticket.")

![The Join Waitlist backend route](https://luna-park.app/static/assets/route-DQo3hM8a.png "The route: receive the body, insert a row, return its id.")
:::

## Code export

Budibase exports apps as files to import back into Budibase. Luna Park compiles every project to plain Vue and Node.js, with no Luna Park runtime.

![The waitlist component compiled to Vue](https://luna-park.app/static/assets/code-BUYWx0sG.png "The waitlist, compiled to Vue and TypeScript.")

## Other differences

- **Costs.** Budibase Cloud bills per creator and per action: automation steps and row saves. A Luna Park app costs what its server costs, at any usage.
- **Customer-facing apps.** Luna Park builds products with your design, your [authentication](/docs/backend-data/auth), and your domain.
- **Logic.** Budibase combines bindings and automations. Luna Park graphs have loops, functions, typed data, and any [npm package](/docs/integrations/npm) as nodes.

## Which one to choose?

::: columns
### Luna Park

- Your app is, or will be, customer-facing.
- You want your own design.
- You want standard code and flat costs.

---

### Budibase

- You need internal apps with approvals and automations.
- You want a free self-hosted tool with unlimited users.
- An open-source license is a requirement.
:::

## Before switching

- Luna Park is not open source.
- Until [managed hosting](/pricing) launches in late 2026, you [host the backend](/docs/deployment/deployment).

::: info
Based on Budibase as of October 2026. See [budibase.com](https://budibase.com) for current features and prices.
:::
