AppXen GraphQL
Instant, real-time GraphQL APIs over PostgreSQL — Hasura GraphQL Engine (community edition) with its own PostgreSQL database, production-hardened with automatic HTTPS, an admin secret generated on first boot, and a hardened Ubuntu base. It runs in your own AWS account, so your schema and data stay with you, with no per-request fees.
Subscribe on AWS MarketplaceWhat's included
Pricing
$0.069/hr (≈ $50/mo software) or $479/yr, billed through AWS Marketplace, plus your EC2 and AWS usage — you keep full control of the instance. No per-request, per-model, or per-user fees.
Recommended instance
t3.small or larger
Production stack
Hasura GraphQL Engine v2, community edition (the Apache License 2.0 build, without the enterprise-only features), with the web console, behind automatic TLS; PostgreSQL 16 on a persistent volume, reachable only on the private container network; telemetry and development mode off; UFW firewall and unattended security updates on a hardened Ubuntu 24.04 base
Locked from the first request
The admin secret is generated on first boot, never baked into the image, and read on the instance with sudo grep HASURA_GRAPHQL_ADMIN_SECRET /opt/appliance/.env
Per-request GraphQL vs self-hosted: the real cost
Pricing verified October 2026 against aws.amazon.com, hasura.io, and supabase.com, and the AWS EC2 us-east-1 price list.
Managed GraphQL services bill for what you use: per operation, per model, or per project. A self-hosted engine is flat. One instance serves every query, mutation, and live subscription your apps make, and the bill does not move when traffic does. These are different products, so compare the cost model, not the feature list.
| Option | Price | Billing model | Data lives in |
|---|---|---|---|
| AWS AppSync | $4.00 per million operations, $2.00 per million real-time updates | Per operation | Your AWS account |
| Hasura DDN Base (hosted v3) | from $5 per active model per month | Per active model | Vendor cloud |
| Supabase Pro | from $25/mo per project | Per project, plus compute | Vendor cloud |
| AppXen GraphQL appliance | ~$66/mo all-in | Flat · unlimited requests | Your AWS account |
Appliance all-in = $0.069/hr software (≈ $50/mo) + a t3.small ($0.0208/hr, ≈ $15/mo) + EBS, at 730 hours a month. AppSync figures are the list prices on its pricing page. Hasura DDN is Hasura's hosted platform on the newer v3 engine; this appliance runs the v2 engine.
Cost scenarios
Prototype or low traffic
A free tier, or a $25/mo project, costs less than a running instance. At this size, hosted wins — use it.
A busy API · 50 million operations a month
At $4.00 per million, AppSync's operation charge alone is about $200/mo, before real-time updates and connection time. The appliance is about $66/mo flat. Savings ≈ $1,600/yr. The break-even is roughly 16 million operations a month.
Compliance / data residency
Your schema, your metadata, and your data live in your AWS account, your region, your VPC — the clean answer when records cannot leave your infrastructure.
When a hosted service is the better choice
Pick a hosted plan if your traffic is small, you want managed uptime, scaling and backups without running an instance, or you need the vendor's newest platform features. The appliance is one instance with one database: you take the backups (the usage instructions show how) and any failover. It wins on flat cost at scale and on keeping everything in your own account.
After you launch
Launch on a t3.small or larger with ports 80, 443, and 22 open, wait about 2 minutes for first boot, then browse https://<public-ip>/console and sign in with the admin secret. For a trusted certificate, point a domain you own at the instance and launch with the EC2 user-data line APPLIANCE_DOMAIN=yourdomain.com.
Operate it
- Admin secret. Generated on first boot, never baked into the image. Read it on the instance with
sudo grep HASURA_GRAPHQL_ADMIN_SECRET /opt/appliance/.env. It has full access to your data: keep it server-side and give browsers and mobile apps Hasura roles and permissions instead. - API. The GraphQL endpoint is
https://<public-ip>/v1/graphql; admin calls send thex-hasura-admin-secretheader. Tables you create in the console's Data tab are exposed at once, with subscriptions for live queries. - Trusted TLS. Point a domain at the instance and set the EC2 user-data
APPLIANCE_DOMAIN=yourdomain.comat launch; first boot obtains a Let's Encrypt certificate. Without a domain the certificate is self-signed and your browser warns once. - Your database. One PostgreSQL 16 database named
hasuraon the private container network, with no host port published. SQL shell:cd /opt/appliance && sudo docker compose exec db psql -U hasura hasura. From your own machine, publish it on127.0.0.1only and use an SSH tunnel; never on 0.0.0.0. - Backups.
sudo docker compose exec -T db pg_dump -U hasura -Fc hasura > ~/hasura.dumpfrom /opt/appliance saves your tables and Hasura's metadata; copy the file off the instance and snapshot the EBS volume for a full image. Restore withpg_restore -U hasura -d hasura --clean --if-existsthrough the same container. - Updates. The Hasura and PostgreSQL images are AppXen builds of the upstream releases with the operating system security updates available when the AMI was built, and have no registry to pull from. To move to a newer release, take a backup, launch the newest AppXen GraphQL AMI and restore into it. Ubuntu security updates for the host install automatically.
Questions? Email support@appxen.ai.
Independent software packaged by AppXen; not affiliated with or endorsed by Hasura or the Hasura GraphQL Engine project.