Softwr

Databases · head to head

Dgraph vs FaunaDB

Dgraph logo

Dgraph

Databases

Apache 2.0 distributed graph database written in Go, maintained by Hypermode, queried through GraphQL or its own DQL language.

From
Free
Rated
-
FaunaDB logo

FaunaDB

Databases

Document-relational database whose hosted service closed in 2025 and whose core is now unmaintained Apache 2.0 code.

From
Free
Rated
-

The short version

  • Each has a real cost: Dgraph sharding is by predicate, so a single very hot predicate lives entirely in one Raft group and cannot be split further; adding nodes does not relieve it and the fix is a data model change.; FaunaDB the hosted service was wound down in 2025, so there is no managed Fauna to buy; every remaining user either operates a JVM cluster themselves or migrates, and both are projects rather than tasks.
  • They diverge on capability: Dgraph covers Apache 2.0 licence, FaunaDB covers Document-relational model.
  • Prices and features above were last checked on 30 August 2026.

Where they differ

Only the attributes on which Dgraph and FaunaDB actually diverge.

Attributes where Dgraph and FaunaDB differ
AttributeDgraphFaunaDB
PlatformsLinux, Mac, Docker, WebWeb
Founded20162012

Identical on both: starting price (Free), pricing model (freemium), free tier (Yes), user rating (Not yet rated), category (Databases).

What each one covers

Drawn from each product's published feature list. An absence here means we hold no record of it - not that the product lacks it.

Only in Dgraph

  • Apache 2.0 licence
  • Generated GraphQL API
  • DQL query language
  • Predicate sharding
  • Raft replication
  • Written in Go
  • Full-text and geo indexing
  • Bulk and live loaders

Only in FaunaDB

  • Document-relational model
  • FQL v10
  • HTTPS access
  • User-defined functions
  • Attribute-based access control
  • Document history
  • Event streaming
  • Apache 2.0 core

Both cover

  • Distributed ACID transactions

What people use each for

The jobs each tool is most often brought in to do.

Dgraph

  • An application whose core data is a graph, such as permissions, social connections or product relationships, where the frontend already consumes GraphQLnot FaunaDB
  • A knowledge graph that outgrew a single machine and needs storage distributed across nodes without a per-core licence negotiationnot FaunaDB
  • Recommendation or fraud-detection features that traverse several hops at request time, where a relational join chain has become the bottlenecknot FaunaDB
  • Teams that want a graph database they can read, fork and self-host under a permissive licence rather than a source-available onenot FaunaDB

FaunaDB

  • Keeping an existing Fauna-backed application alive on self-hosted infrastructure while a migration is planned and fundednot Dgraph
  • Extracting historical data from a Fauna dataset that can no longer be reached through the hosted APInot Dgraph
  • Studying a production implementation of deterministic distributed transactions, since the full server source is now readable under Apache 2.0not Dgraph
  • Forking the engine deliberately, where an organisation has JVM and distributed-systems staff and wants a document-relational store it fully controlsnot Dgraph

Where each one falls short

Documented limitations, not opinions. Every one is a constraint you would hit in normal use.

Dgraph

  • Sharding is by predicate, so a single very hot predicate lives entirely in one Raft group and cannot be split further; adding nodes does not relieve it and the fix is a data model change.
  • Stewardship passed from Dgraph Labs to Hypermode after the original company stopped operating independently, so anyone building on it is betting on a second custodian rather than on the original team's roadmap.
  • The GraphQL layer is generated and opinionated, so anything it does not express drops you into DQL, which is a second language your team must learn and which no other database speaks.
  • The community is a fraction of Neo4j's, so operational answers, tuning experience, hiring and third-party tooling are all thinner, and unusual failure modes in a Zero and Alpha cluster leave you reading source rather than a forum.
  • There is no portable graph standard to migrate to; Cypher, Gremlin and SPARQL are all different query models, so the schema and every query is a rewrite if you later leave, and that cost grows with the application.

FaunaDB

  • The hosted service was wound down in 2025, so there is no managed Fauna to buy; every remaining user either operates a JVM cluster themselves or migrates, and both are projects rather than tasks.
  • The open-sourced repository has had no substantive activity since May 2025 and the drivers were frozen alongside it, so you inherit responsibility for security patches in a Scala distributed database that almost nobody else is running.
  • FQL has no wire or dialect compatibility with anything else, so migrating off is a rewrite of every query, index and access rule in the application rather than a data export.
  • No BI tool, ORM or CDC connector speaks FQL, so reporting and analytics always required exporting the data first, and that export tooling is now also unmaintained.
  • The community was small before the shutdown and has dispersed since, so operational answers, tuning advice and people who have run a Fauna cluster in anger are all scarce when something breaks.

Pricing, plan by plan

Dgraph

Free
  • CommunityFree
    • Native GraphQL
    • Graph queries
    • Full-text search
  • Cloud$39/month
    • Managed service
    • Auto-scaling
    • Enterprise support

FaunaDB

Free
  • FreeFree
    • 100K read ops
    • 50K write ops
    • 1GB storage
  • Pro$25/month
    • Pay per use
    • Priority support
    • Advanced features

Which should you pick?

Choose Dgraph if

  • You need apache 2.0 licence.
  • You want to start without paying.
  • You work on Linux, Mac, Docker, Web.
  • You also want generated graphql api.

Choose FaunaDB if

  • You need document-relational model.
  • You want to start without paying.
  • You also want fql v10.

Questions people ask

Is Dgraph or FaunaDB better?
Neither clearly leads. Dgraph starts at Free and FaunaDB at Free, and user ratings are close enough to be indistinguishable. Choose on capability and platform support.
Which is cheaper, Dgraph or FaunaDB?
Dgraph starts at Free and FaunaDB at Free.
Does Dgraph or FaunaDB run on more platforms?
Dgraph runs on Linux, Mac, Docker, Web. FaunaDB runs on Web.
Can I use Dgraph for free?
Both have a free tier, so you can try either at no cost before committing.
What is Dgraph best used for?
Dgraph is most often used for an application whose core data is a graph, such as permissions, social connections or product relationships, where the frontend already consumes graphql, a knowledge graph that outgrew a single machine and needs storage distributed across nodes without a per-core licence negotiation, recommendation or fraud-detection features that traverse several hops at request time, where a relational join chain has become the bottleneck, teams that want a graph database they can read, fork and self-host under a permissive licence rather than a source-available one. Of those, an application whose core data is a graph, such as permissions, social connections or product relationships, where the frontend already consumes graphql and a knowledge graph that outgrew a single machine and needs storage distributed across nodes without a per-core licence negotiation are not what FaunaDB is typically brought in for.
What can Dgraph do that FaunaDB cannot?
Dgraph covers Apache 2.0 licence, Generated GraphQL API, DQL query language, Predicate sharding. FaunaDB covers Document-relational model, FQL v10, HTTPS access, User-defined functions. Both handle Distributed ACID transactions.

Answered from the vendors’ own pages

Dgraph: Is Dgraph open source?

Yes. The current repository is Apache 2.0, which is a permissive OSI licence, and the project is at v25 under Hypermode's maintenance.

FaunaDB: Can I still sign up for Fauna as a service?

No. Fauna Inc. wound down the hosted service in 2025 and the company website is no longer serving. The only way to run Fauna now is to build and operate the open-sourced server yourself.

Dgraph: Is it really GraphQL?

It serves a generated GraphQL API, which is real GraphQL for clients. Its native language, DQL, resembles GraphQL syntactically but is Dgraph's own language and is not the GraphQL specification.

FaunaDB: What licence is the open-sourced code under?

Apache 2.0, with the copyright held by a FaunaDB Foundation. That is a permissive OSI licence with no competing-use clause, so you may run it, modify it and even offer it as a service.

Dgraph: How does it compare to Neo4j?

Neo4j has the larger ecosystem, Cypher, and far more operational precedent. Dgraph distributes storage across nodes by default and gives you a GraphQL endpoint without writing resolvers. The choice usually turns on whether you need horizontal scale and a GraphQL surface more than you need ecosystem depth.

FaunaDB: Is the open source version the same software that ran the cloud?

It is the core database engine. The control plane, billing, dashboard and multi-tenant operational tooling that made it a service are not part of the release, so you are running the engine, not the product.

Dgraph: What does a production cluster look like?

At minimum a set of Zero nodes for coordination and a replicated set of Alpha nodes for data, typically three of each for fault tolerance, which is a meaningfully larger operational footprint than a single graph server.

FaunaDB: What should I migrate to?

There is no drop-in target. Teams that valued the document model with relationships usually land on Postgres with JSONB, and teams that valued the serverless HTTP access pattern usually land on DynamoDB or a managed Postgres with an HTTP driver. Either way the query layer is rewritten.

Dgraph: Who maintains it now?

Hypermode. Dgraph Labs, the original company, no longer operates it, and that change of custodian is the main non-technical risk to weigh.

FaunaDB: How hard is it to self-host?

It builds as a fat JAR and runs as a multi-node JVM cluster. There is an OPERATING.md, but no supported packaging, no operator, no upstream releases and no support contract, so budget for a distributed-systems engineer, not a container.

Share

Related pages

Other head to heads