# Hasura vs PostGraphile

| Attribute | Hasura | PostGraphile |
|---|---|---|
| **vioscaleAI score** | 56.5 (51% (medium)) | 52.2 (47% (low)) |
| activity.commits_last_30d | 23 | 16 |
| adoption.dependent_repos | 31 | 501 |
| adoption.github_stars | 32,132 | 12,935 |
| adoption.package_downloads_weekly | - | 101,072 |
| content.faq | `[{"answer":"Hasura provides a platform that automatically generates GraphQL APIs from databases and external services, enabling developers to build data layers quickly. It also offers PromptQL for natural language data queries powered by AI. It is indexed under GraphQL Tools.","source":"https://hasura.io","question":"What is Hasura?","confidence":0.6},{"answer":"Hasura is open source, so it can be self-hosted and used at no licence cost. It is released under the Apache-2.0 licence. Paid editions are also offered: Professional, Business and Enterprise, priced on request. Pricing changes often, so verify at source before relying on it.","source":"https://hasura.io","question":"Is Hasura free to use?","confidence":0.6},{"answer":"Hasura supports the web and a command-line interface. Platforms we have not confirmed are simply not listed here rather than ruled out.","source":"https://hasura.io","question":"What platforms does Hasura support?","confidence":0.6},{"answer":"Yes. Hasura can be deployed cloud / SaaS and self-hosted, so it does not have to run on the vendor's infrastructure.","source":"https://hasura.io","question":"Can Hasura be self-hosted?","confidence":0.6},{"answer":"We have confirmed 7 integrations for Hasura, including PostgreSQL, MySQL, Elasticsearch, SQL Server, MongoDB, Snowflake and Clickhouse. This is what we could verify from public sources, so the vendor may support others we have not indexed.","source":"https://hasura.io","question":"What does Hasura integrate with?","confidence":0.6},{"answer":"We have independently confirmed SOC 2, ISO 27001, HIPAA and GDPR for Hasura. Certifications we do not list are ones we have not been able to verify from public sources, which is not the same as Hasura not holding them. Always confirm compliance directly before you rely on it.","source":"https://hasura.io/security","question":"What security certifications does Hasura have?","confidence":0.7},{"answer":"Yes. Hasura is published under the Apache-2.0 licence, a permissive licence that generally allows commercial use and modification. Licence terms can change between releases, so verify against the repository for the version you intend to use.","source":"https://github.com/hasura/graphql-engine","question":"Is Hasura open source?","confidence":0.95},{"answer":"Hasura is available worldwide. The vendor is headquartered in the United States.","source":"https://hasura.io","question":"Where is Hasura available?","confidence":0.75}]` | `[{"answer":"An open-source tool that generates GraphQL APIs directly from PostgreSQL databases, with emphasis on performance and customizability. The generated API can be extended and modified to meet specific application needs. It is indexed under GraphQL Tools.","source":"https://www.graphile.org/postgraphile/","question":"What is PostGraphile?","confidence":0.6},{"answer":"PostGraphile is open source, so it can be self-hosted and used at no licence cost. It is released under the MIT licence. A commercial or hosted edition starts at $375. Prices are published openly on the vendor's own pricing page. Pricing changes often, so verify at source before relying on it.","source":"https://www.graphile.org/postgraphile/","question":"Is PostGraphile free to use?","confidence":0.6},{"answer":"We have confirmed browser-based access to PostGraphile. That is the extent of what we could verify from public sources, so it may well offer desktop or mobile clients we have not indexed.","source":"https://www.graphile.org/postgraphile/","question":"What platforms does PostGraphile support?","confidence":0.6},{"answer":"Yes. PostGraphile can be deployed self-hosted, so it does not have to run on the vendor's infrastructure.","source":"https://www.graphile.org/postgraphile/","question":"Can PostGraphile be self-hosted?","confidence":0.6},{"answer":"Yes. PostGraphile is published under the MIT licence, a permissive licence that generally allows commercial use and modification. Licence terms can change between releases, so verify against the repository for the version you intend to use.","source":"https://github.com/graphile/crystal","question":"Is PostGraphile open source?","confidence":0.99},{"answer":"PostGraphile is available worldwide. Its primary market is the United States.","source":"https://www.graphile.org/postgraphile/","question":"Where is PostGraphile available?","confidence":0.5}]` |
| deployment.options | `{"cloud":true,"on_prem":true,"self_hosted":true}` | `{"self_hosted":true}` |
| description.long | A GraphQL server that creates APIs from multiple data sources including databases and external APIs, offering real-time capabilities and role-based access control. Developers can query data across distributed sources as if from a single database. | PostGraphile is a tool that automatically creates a GraphQL API from a PostgreSQL database, eliminating the need to build custom APIs. It includes built-in security through PostgreSQL's role-based access and row-level security policies, along with performance optimization and extensibility features. |
| features.capabilities | `{"role":"server","language":"Haskell (core), TypeScript, Python, Go (connectors)","managed_cloud":true,"self_hostable":true,"subscriptions":true,"auth_directives":true,"schema_approach":"introspection","db_introspection":true}` | `{"role":"db_to_graphql","language":"JavaScript/TypeScript","self_hostable":true,"subscriptions":true,"auth_directives":true,"schema_approach":"introspection","type_generation":true,"db_introspection":true}` |
| integrations.count | 4 | 1 |
| integrations.list | `[{"name":"PostgreSQL"},{"name":"MySQL"},{"name":"Elasticsearch"},{"name":"SQL Server"},{"name":"MongoDB"},{"name":"Snowflake"},{"name":"Clickhouse"},{"name":"MS SQL Server","native":true}]` | `[{"name":"PostgreSQL"}]` |
| language.primary | TypeScript | TypeScript |
| license.spdx | Apache-2.0 | MIT |
| market.availability | `{"hqCountry":"US","primaryMarkets":[],"availabilityScope":"global","availableCountries":[],"notAvailableCountries":[]}` | `{"primaryMarkets":["US"],"availabilityScope":"global","availableCountries":[],"notAvailableCountries":[]}` |
| platform.support | `{"cli":true,"web":true}` | `{"cli":true}` |
| pricing | `{"type":"hybrid","plans":[{"free":true,"name":"Community","contactSales":false},{"free":false,"name":"Professional","contactSales":true},{"free":false,"name":"Business","contactSales":true},{"free":false,"name":"Enterprise","contactSales":true}],"summary":"Free tier available. Paid and enterprise plans require contacting sales.","freeTier":true,"sourceUrl":"https://hasura.io","retrievedAt":"2026-08-13T09:29:10.628Z"}` | `{"type":"open_source","plans":[{"free":true,"name":"Core (Open Source)","description":"Self-hosted GraphQL API generation from PostgreSQL","contactSales":false},{"free":false,"name":"On-Demand Consultancy","components":[{"kind":"one_time","amount":375,"currency":"USD"}],"description":"One hour of voice/screensharing with maintainer","contactSales":false},{"free":false,"name":"Development Support","components":[{"kind":"fixed","amount":999,"period":"month","currency":"USD"}],"description":"One-to-one access to Graphile team throughout the year; priority support via chat","contactSales":true}],"summary":"Open source and free. Professional support from $999/month.","freeTier":true,"sourceUrl":"https://www.graphile.org/postgraphile/","retrievedAt":"2026-08-14T16:37:12.955Z","startingPrice":{"amount":375,"period":"month","currency":"USD"}}` |
| pricing.free_tier | yes | yes |
| pricing.model | open_source | open_source |
| pricing.price_level | free | free |
| pricing.transparent | no | yes |
| release.cadence_days | 12 | - |
| release.history | `[{"url":"https://github.com/hasura/graphql-engine/releases/tag/v2.50.3","date":"2026-09-09T00:41:20Z","type":"stable","version":"v2.50.3"},{"url":"https://github.com/hasura/graphql-engine/releases/tag/v2.50.1","date":"2026-08-18T18:14:01Z","type":"stable","version":"v2.50.1"},{"url":"https://github.com/hasura/graphql-engine/releases/tag/v2.50.0","date":"2026-08-05T23:03:34Z","type":"stable","version":"v2.50.0"},{"url":"https://github.com/hasura/graphql-engine/releases/tag/v2.45.8","date":"2026-08-05T23:03:24Z","type":"stable","version":"v2.45.8"},{"url":"https://github.com/hasura/graphql-engine/releases/tag/v2.49.5","date":"2026-07-21T01:35:19Z","type":"stable","version":"v2.49.5"},{"url":"https://github.com/hasura/graphql-engine/releases/tag/v2.45.6","date":"2026-07-10T00:18:51Z","type":"stable","version":"v2.45.6"},{"url":"https://github.com/hasura/graphql-engine/releases/tag/v2.49.4","date":"2026-07-08T14:34:56Z","type":"stable","version":"v2.49.4"},{"url":"https://github.com/hasura/graphql-engine/releases/tag/v2.49.3","date":"2026-06-22T19:29:29Z","type":"stable","version":"v2.49.3"},{"url":"https://github.com/hasura/graphql-engine/releases/tag/v2.45.5","date":"2026-06-12T16:37:47Z","type":"stable","version":"v2.45.5"},{"url":"https://github.com/hasura/graphql-engine/releases/tag/v2.49.2","date":"2026-06-11T22:19:45Z","type":"stable","version":"v2.49.2"},{"url":"https://github.com/hasura/graphql-engine/releases/tag/v2.49.1","date":"2026-06-04T22:19:29Z","type":"stable","version":"v2.49.1"},{"url":"https://github.com/hasura/graphql-engine/releases/tag/v2.49.0","date":"2026-05-28T15:19:25Z","type":"stable","version":"v2.49.0"},{"url":"https://github.com/hasura/graphql-engine/releases/tag/v2.45.4","date":"2026-05-14T14:35:52Z","type":"stable","version":"v2.45.4"},{"url":"https://github.com/hasura/graphql-engine/releases/tag/v2.48.16","date":"2026-04-15T16:48:21Z","type":"stable","version":"v2.48.16"},{"url":"https://github.com/hasura/graphql-engine/releases/tag/v2.48.15","date":"2026-04-01T17:42:22Z","type":"stable","version":"v2.48.15"},{"url":"https://github.com/hasura/graphql-engine/releases/tag/v2.48.14","date":"2026-03-25T22:48:36Z","type":"stable","version":"v2.48.14"},{"url":"https://github.com/hasura/graphql-engine/releases/tag/v2.48.13","date":"2026-03-17T18:12:07Z","type":"stable","version":"v2.48.13"},{"url":"https://github.com/hasura/graphql-engine/releases/tag/v2.48.12","date":"2026-02-24T17:36:12Z","type":"stable","version":"v2.48.12"},{"url":"https://github.com/hasura/graphql-engine/releases/tag/v2.48.11","date":"2026-02-05T23:19:50Z","type":"stable","version":"v2.48.11"},{"url":"https://github.com/hasura/graphql-engine/releases/tag/v2.48.10","date":"2026-01-15T08:35:01Z","type":"stable","version":"v2.48.10"}]` | `[{"url":"https://github.com/graphile/crystal/releases/tag/graphile-build-pg%405.1.5","date":"2026-10-02T08:22:45Z","type":"stable","version":"graphile-build-pg@5.1.5"},{"url":"https://github.com/graphile/crystal/releases/tag/grafast%401.1.4","date":"2026-10-02T08:22:43Z","type":"stable","version":"grafast@1.1.4"},{"url":"https://github.com/graphile/crystal/releases/tag/ruru%402.0.2","date":"2026-09-04T14:47:04Z","type":"stable","version":"ruru@2.0.2"},{"url":"https://github.com/graphile/crystal/releases/tag/ruru-components%402.0.1","date":"2026-09-04T14:47:01Z","type":"stable","version":"ruru-components@2.0.1"},{"url":"https://github.com/graphile/crystal/releases/tag/postgraphile%405.1.5","date":"2026-09-04T14:47:10Z","type":"stable","version":"postgraphile@5.1.5"},{"url":"https://github.com/graphile/crystal/releases/tag/graphile-config%401.1.1","date":"2026-09-04T14:47:07Z","type":"stable","version":"graphile-config@1.1.1"},{"url":"https://github.com/graphile/crystal/releases/tag/graphile-build-pg%405.1.4","date":"2026-09-04T14:47:13Z","type":"stable","version":"graphile-build-pg@5.1.4"},{"url":"https://github.com/graphile/crystal/releases/tag/grafserv%401.0.2","date":"2026-09-04T14:47:22Z","type":"stable","version":"grafserv@1.0.2"},{"url":"https://github.com/graphile/crystal/releases/tag/grafast%401.1.3","date":"2026-09-04T14:47:16Z","type":"stable","version":"grafast@1.1.3"},{"url":"https://github.com/graphile/crystal/releases/tag/%40dataplan/pg%401.1.2","date":"2026-09-04T14:47:19Z","type":"stable","version":"@dataplan/pg@1.1.2"},{"url":"https://github.com/graphile/crystal/releases/tag/postgraphile%405.1.4","date":"2026-08-05T13:36:30Z","type":"stable","version":"postgraphile@5.1.4"},{"url":"https://github.com/graphile/crystal/releases/tag/grafast%401.1.2","date":"2026-08-05T13:36:32Z","type":"stable","version":"grafast@1.1.2"},{"url":"https://github.com/graphile/crystal/releases/tag/postgraphile%405.1.3","date":"2026-08-04T07:44:26Z","type":"stable","version":"postgraphile@5.1.3"},{"url":"https://github.com/graphile/crystal/releases/tag/graphile-build-pg%405.1.3","date":"2026-08-04T07:44:29Z","type":"stable","version":"graphile-build-pg@5.1.3"},{"url":"https://github.com/graphile/crystal/releases/tag/grafast%401.1.1","date":"2026-08-04T07:44:32Z","type":"stable","version":"grafast@1.1.1"},{"url":"https://github.com/graphile/crystal/releases/tag/postgraphile%405.1.2","date":"2026-07-29T07:07:04Z","type":"stable","version":"postgraphile@5.1.2"},{"url":"https://github.com/graphile/crystal/releases/tag/graphile-build%405.1.1","date":"2026-07-29T07:07:01Z","type":"stable","version":"graphile-build@5.1.1"},{"url":"https://github.com/graphile/crystal/releases/tag/graphile-build-pg%405.1.2","date":"2026-07-29T07:07:07Z","type":"stable","version":"graphile-build-pg@5.1.2"},{"url":"https://github.com/graphile/crystal/releases/tag/postgraphile%405.1.1","date":"2026-07-22T10:38:15Z","type":"stable","version":"postgraphile@5.1.1"},{"url":"https://github.com/graphile/crystal/releases/tag/graphile-utils%405.0.3","date":"2026-07-22T10:38:12Z","type":"stable","version":"graphile-utils@5.0.3"}]` |
| reliability.status_page | yes | yes |
| security.disclosure_policy | yes | - |
| security.gdpr | yes | - |
| security.hipaa | yes | - |
| security.iso27001 | yes | - |
| security.scorecard | 5.2 | - |
| security.soc2 | yes | - |
| security.vulnerabilities | `{"count":0,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=npm&package_name=graphql2chartjs&per_page=100","last_12m":0,"max_severity":null}` | `{"count":0,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=npm&package_name=pg-sql2&per_page=100","last_12m":0,"max_severity":null}` |

## Capabilities (GraphQL Tools)

| Capability | Hasura | PostGraphile |
|---|:--:|:--:|
| **Core** |  |  |
| Role | Server | DB-to-GraphQL |
| Primary language | Haskell (core), TypeScript, Python, Go (connectors) | JavaScript/TypeScript |
| **Modelling** |  |  |
| Schema approach | DB introspection | DB introspection |
| **Scale** |  |  |
| Federation / subgraph composition | - | - |
| **Realtime** |  |  |
| Real-time subscriptions | ✓ | ✓ |
| **Performance** |  |  |
| Response / edge caching | - | - |
| **DX** |  |  |
| Typed code generation | - | ✓ |
| **Automation** |  |  |
| Generates API from a database | ✓ | ✓ |
| **Security** |  |  |
| Built-in authz / permissions | ✓ | ✓ |
| **Deployment** |  |  |
| Official hosted offering | ✓ | - |
| Self-hostable | ✓ | ✓ |

*Source: vioscaleAI. Generated 2026-10-16T20:58:45.643Z. "-" = undocumented, not absent.*
