Open-source backend with GraphQL
Nhost and nself share the same core: Hasura + PostgreSQL + Auth. Nhost wraps it in a managed cloud platform with a dashboard. nself wraps it in a self-hosted CLI with a plugin ecosystem. If you already use Nhost, migration is straightforward because the underlying technology is nearly identical.
See the [full comparison table](/compare) for a side-by-side view of all 24 features across nself, Supabase, Nhost, Firebase, and Appwrite.
Managed Hasura Cloud. Nhost runs Hasura Cloud with built-in response caching, query analytics, and performance monitoring. nself runs open-source Hasura, which lacks these Cloud-only features. If you need query-level performance insights without setting up Prometheus/Grafana, Nhost delivers that out of the box. Source: [Nhost platform](https://docs.nhost.io/platform/overview).
Team collaboration dashboard. Nhost's web dashboard supports multiple team members with role-based access. You can invite developers, set permissions, and manage projects from a browser. nself's admin runs locally on each developer's machine with no shared dashboard. Source: [Nhost dashboard](https://app.nhost.io).
Zero server management. Nhost handles Postgres backups, Hasura upgrades, SSL certificates, scaling, and uptime monitoring. You focus on schema design and business logic. Source: [Nhost infrastructure](https://docs.nhost.io/platform/overview).
Faster onboarding for teams. Create a project in the Nhost console and start writing queries immediately. No server provisioning, no Docker, no SSH. Good for teams where not everyone is comfortable with command-line tools. Source: [Nhost quickstart](https://docs.nhost.io/platform/overview/get-started-with-nhost).
Cost. Nhost Starter is $25/mo. nself runs the same Hasura + Postgres stack on a $5/mo VPS with no usage limits. At 100K MAU, Nhost can reach $75-150/mo vs nself's $10-20/mo. The technology is the same; the difference is who runs the server. Source: [Nhost pricing](https://nhost.io/pricing), [nself pricing](https://nself.org/pricing).
Full configuration control. With nself, you control Hasura metadata, Postgres extensions, nginx configuration, and every environment variable. Nhost restricts some Hasura settings and extensions to prevent conflicts with their managed infrastructure. Source: [Nhost limitations](https://docs.nhost.io).
Plugin ecosystem. nself has 87 plugins for AI assistants, media processing, real-time chat, monitoring, email (16+ providers), billing, and search. Nhost has Hasura Actions and custom webhooks but no installable plugin marketplace. Source: [nself plugins](https://docs.nself.org/plugins).
Offline and air-gapped deployment. nself works without internet access once installed. Every service runs locally. Nhost requires cloud connectivity for all operations. Source: [nself deployment](https://docs.nself.org/guides/deployment).
*Prices from public pricing pages, verified April 2026.*
| Scale | nself | Nhost |
|-------|-------|-------|
| **Startup (10K MAU)** | $5/mo (VPS) + $0 CLI | $25/mo (Starter) |
| **Growth (100K MAU)** | $10-20/mo (larger VPS) | $75-150/mo (Pro + overages) |
| **Scale (1M MAU)** | $50-100/mo (dedicated) | $500-1500/mo (Enterprise) |
Both use the same technology. The pricing difference is managed hosting vs self-hosting.
1. You want the same Hasura + Postgres stack at a fraction of the cost
2. You need full control over Hasura metadata and Postgres extensions
3. You want a plugin ecosystem (AI, media, chat, monitoring)
4. You need offline, air-gapped, or on-premise deployment
5. You already have ops capacity and prefer CLI-first workflows
1. You want managed Hasura Cloud with caching and query analytics
2. Your team needs a shared web dashboard with role-based access
3. You do not want to manage servers, backups, or SSL certificates
4. You need the fastest possible onboarding for a team with mixed technical levels
5. You value managed infrastructure over cost savings
Nhost and nself both use Hasura + Postgres, so migration is the most straightforward of all four competitors.
### Step 1: Export your Nhost database
# Get your Nhost database connection string from the Nhost dashboard
# Settings > Database > Connection Info
pg_dump \
--host YOUR-NHOST-DB-HOST \
--port 5432 \
--username postgres \
--format custom \
--no-owner \
--no-acl \
--file nhost_dump.pgdump \
YOUR_DB_NAME### Step 2: Export Hasura metadata
# Install Hasura CLI if not already present
# Export metadata from your Nhost Hasura instance
hasura metadata export \
--endpoint https://YOUR-NHOST-SUBDOMAIN.hasura.YOUR-REGION.nhost.run \
--admin-secret YOUR_ADMIN_SECRET \
--output-dir ./hasura_metadata### Step 3: Install nself and start
curl -fsSL https://install.nself.org | sh
nself init my-project
cd my-project
nself start### Step 4: Restore database and apply metadata
# Restore the database
nself db restore nhost_dump.pgdump
# Apply Hasura metadata (permissions, relationships, event triggers)
cp -r ./hasura_metadata/* ./hasura/metadata/
nself hasura metadata apply
# Verify everything loaded
nself hasura console### Step 5: Migrate auth users
Both platforms use a compatible auth system (nHost Auth). Export and re-import users:
# Export users from Nhost via their Auth API
curl -s "https://YOUR-NHOST-AUTH-URL/v1/users" \
-H "x-hasura-admin-secret: YOUR_ADMIN_SECRET" \
> nhost_users.json
# Import into nself auth
nself auth import nhost_users.json### Step 6: Transfer storage
# Download files from Nhost storage
# Use the Nhost storage API or dashboard to export
# Upload to nself MinIO
nself storage upload ./exported_files/ /bucket-name/### Step 7: Update application code
If you were using the Nhost JavaScript SDK, switch to a standard GraphQL client. Your queries stay the same since both use Hasura:
// Before (Nhost SDK)
const { data } = await nhost.graphql.request(GET_POSTS, { userId })
// After (any GraphQL client, queries are identical)
const { data } = await client.query({ query: GET_POSTS, variables: { userId } })Your GraphQL queries, mutations, and subscriptions work without changes. Only the client initialization differs.
**Are Hasura migrations compatible between Nhost and nself?**
Yes. Both use Hasura's migration format. Copy your migration files directly to nself's migrations directory.
**Does nself support Hasura Cloud features like response caching?**
nself uses open-source Hasura, which does not include Cloud-only features like response caching or query analytics. You can add Redis caching at the application layer via the Redis plugin.
**Can I keep using Nhost's auth system?**
nself uses nHost Auth (the open-source version), so the auth flow is very similar. User migration requires exporting and re-importing user records, but the API is compatible.
**Is the GraphQL API identical?**
Yes. Both use Hasura's GraphQL engine. Your queries, mutations, and subscriptions transfer without modification.
**What about Nhost's serverless functions?**
nself has an optional Functions service. If you used Nhost's serverless functions, you can port them to nself's Functions service or run them as a Custom Service.
**Can I use Nhost's Run (custom containers) feature?**
nself supports up to 10 Custom Services (CS_1 through CS_10) defined in your environment config. These are equivalent to Nhost Run containers.
**How long does migration take?**
For a typical project: 30-60 minutes. The database and Hasura metadata transfer directly. Auth user migration and storage transfer add time depending on volume.
**Will my Nhost webhooks and event triggers still work?**
Hasura event triggers and webhooks are part of the metadata export. They transfer directly. You only need to update the webhook URLs to point at your nself server.
**Can I run both in parallel during migration?**
Yes. Point new features at nself while keeping existing ones on Nhost. Since both use Hasura, you can even run the same queries against both backends for validation.
**What about Nhost's managed Postgres extensions?**
nself gives you full control over Postgres extensions. Install any extension with CREATE EXTENSION. Nhost restricts which extensions are available on their managed platform.
Same Hasura + Postgres stack, self-hosted, with 87 plugins. The CLI is MIT-licensed and free. Membership starts at $0.99/mo for pro plugins.
[Install nself](https://install.nself.org) | [Run the migration script on a test project](/vs/nhost#migration-guide)
MIT-licensed CLI. Full backend stack in 5 minutes.