# gqlgen vs Hasura

| Attribute | gqlgen | Hasura |
|---|---|---|
| **Vioscale score** | 62.8 (36% (low)) | 58.9 (55% (medium)) |
| activity.commits_last_30d | 20 | 46 |
| adoption.dependent_repos | 3,167 | 31 |
| adoption.github_stars | 10,753 | 32,097 |
| deployment.options | - | `{"cloud":true,"self_hosted":true}` |
| description.long | A schema-first code generation library for Go that lets developers define GraphQL APIs using the schema definition language and automatically generates type-safe server implementations. It eliminates boilerplate by handling code generation while enforcing type safety throughout. | 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. |
| features.capabilities | `{"role":"server","caching":false,"language":"Go","federation":true,"managed_cloud":false,"self_hostable":true,"subscriptions":true,"auth_directives":false,"schema_approach":"schema_first","type_generation":true,"db_introspection":false}` | `{"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}` |
| integrations.count | - | 7 |
| integrations.list | - | `[{"name":"PostgreSQL"},{"name":"MySQL"},{"name":"Elasticsearch"},{"name":"SQL Server"},{"name":"MongoDB"},{"name":"Snowflake"},{"name":"Clickhouse"}]` |
| language.primary | Go | TypeScript |
| license.spdx | MIT | Apache-2.0 |
| market.availability | - | `{"hqCountry":"US","primaryMarkets":[],"availabilityScope":"global","availableCountries":[],"notAvailableCountries":[]}` |
| platform.support | `{"cli":true}` | `{"cli":true,"web":true}` |
| pricing | `{"type":"open_source","sourceUrl":"https://gqlgen.com","retrievedAt":"2026-08-14T21:39:40.951Z"}` | `{"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"}` |
| pricing.free_tier | - | yes |
| pricing.model | open_source | freemium |
| pricing.price_level | free | low |
| pricing.transparent | - | no |
| release.cadence_days | 15 | 12 |
| release.history | `[{"url":"https://github.com/99designs/gqlgen/releases/tag/v0.17.94","date":"2026-07-09T15:29:06Z","type":"stable","version":"v0.17.94"},{"url":"https://github.com/99designs/gqlgen/releases/tag/v0.17.93","date":"2026-06-25T23:54:10Z","type":"stable","version":"v0.17.93"},{"url":"https://github.com/99designs/gqlgen/releases/tag/v0.17.92","date":"2026-06-21T13:23:58Z","type":"stable","version":"v0.17.92"},{"url":"https://github.com/99designs/gqlgen/releases/tag/v0.17.91","date":"2026-06-11T14:33:01Z","type":"stable","version":"v0.17.91"},{"url":"https://github.com/99designs/gqlgen/releases/tag/v0.17.90","date":"2026-04-25T19:11:01Z","type":"stable","version":"v0.17.90"},{"url":"https://github.com/99designs/gqlgen/releases/tag/v0.17.89","date":"2026-03-24T18:45:49Z","type":"stable","version":"v0.17.89"},{"url":"https://github.com/99designs/gqlgen/releases/tag/v0.17.88","date":"2026-03-09T00:10:30Z","type":"stable","version":"v0.17.88"},{"url":"https://github.com/99designs/gqlgen/releases/tag/v0.17.87","date":"2026-02-19T14:14:40Z","type":"stable","version":"v0.17.87"},{"url":"https://github.com/99designs/gqlgen/releases/tag/v0.17.86","date":"2026-01-12T01:28:31Z","type":"stable","version":"v0.17.86"},{"url":"https://github.com/99designs/gqlgen/releases/tag/v0.17.85","date":"2025-12-17T02:21:31Z","type":"stable","version":"v0.17.85"},{"url":"https://github.com/99designs/gqlgen/releases/tag/v0.17.84","date":"2025-11-24T16:56:20Z","type":"stable","version":"v0.17.84"},{"url":"https://github.com/99designs/gqlgen/releases/tag/v0.17.83","date":"2025-11-11T02:05:44Z","type":"stable","version":"v0.17.83"},{"url":"https://github.com/99designs/gqlgen/releases/tag/v0.17.82","date":"2025-11-07T01:29:47Z","type":"stable","version":"v0.17.82"},{"url":"https://github.com/99designs/gqlgen/releases/tag/v0.17.81","date":"2025-09-25T23:00:54Z","type":"stable","version":"v0.17.81"},{"url":"https://github.com/99designs/gqlgen/releases/tag/v0.17.80","date":"2025-09-17T16:13:26Z","type":"stable","version":"v0.17.80"},{"url":"https://github.com/99designs/gqlgen/releases/tag/v0.17.79","date":"2025-09-14T19:35:25Z","type":"stable","version":"v0.17.79"},{"url":"https://github.com/99designs/gqlgen/releases/tag/v0.17.78","date":"2025-07-27T23:09:18Z","type":"stable","version":"v0.17.78"},{"url":"https://github.com/99designs/gqlgen/releases/tag/v0.17.77","date":"2025-07-27T03:26:30Z","type":"stable","version":"v0.17.77"},{"url":"https://github.com/99designs/gqlgen/releases/tag/v0.17.76","date":"2025-06-28T23:25:19Z","type":"stable","version":"v0.17.76"},{"url":"https://github.com/99designs/gqlgen/releases/tag/v0.17.75","date":"2025-06-16T14:42:20Z","type":"stable","version":"v0.17.75"}]` | `[{"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/hasura/graphql-engine/releases/tag/v2.48.9","date":"2025-12-24T09:10:33Z","type":"stable","version":"v2.48.9"}]` |
| reliability.status_page | - | yes |
| security.disclosure_policy | - | yes |
| security.gdpr | - | yes |
| security.hipaa | - | yes |
| security.iso27001 | - | yes |
| security.scorecard | 6.6 | 5.2 |
| security.soc2 | - | yes |
| security.vulnerabilities | `{"count":0,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=go&package_name=github.com%2F99designs%2Fgqlgen&per_page=100","last_12m":0,"max_severity":null}` | `{"count":0,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=npm&package_name=graphql2chartjs&per_page=100","last_12m":0,"max_severity":null}` |

## Capabilities (GraphQL Tools)

| Capability | gqlgen | Hasura |
|---|:--:|:--:|
| **Core** |  |  |
| Role | Server | Server |
| Primary language | Go | Haskell (core), TypeScript, Python, Go (connectors) |
| **Modelling** |  |  |
| Schema approach | Schema-first | 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: Vioscale. Generated 2026-09-01T15:55:26.236Z. "-" = undocumented, not absent.*
