BI + AI · Hex Alternative ← All comparisons

Qrly vs Hex

Hex is a notebook product — excellent for an analyst holding SQL and Python in one document, and licensed per user for everyone who only wants to look. Qrly is BI + AI in one self-hostable platform: natural-language Ask (NL→SQL) on your choice of local LLM (Ollama, LM Studio) or cloud (Claude, Gemini, OpenAI, Azure), an OLAP model layer, live dashboards, and embedded analytics via signed JWT for unlimited customer tenants — with no per-viewer seat.

The Honest Verdict

Who wins where

Hex is genuinely great inside its intended scope. The question is not which tool is better in the abstract — it is which shape fits the work in front of you. Here is where each tool is stronger, in plain language, with no marketing fluff.

Qrly wins

BI + AI in one self-hosted platform, flat pricing

  • AI Ask (NL→SQL) across 12+ database dialects
  • BYO LLM: local Ollama / LM Studio, or Claude / Gemini / OpenAI / Azure
  • Embedded analytics via signed JWT — no per-viewer seats
  • AI anomaly detection, schema descriptions, performance analyzer
  • Multi-tenant hierarchy — tenant, organisation, project, collection
  • Flat licence for unlimited users — editors and readers alike
Tie / depends

SQL, charts and sharing the result

  • Both write SQL against your existing databases
  • Both chart a result and publish it for other people to read
  • Both schedule refreshes and deliver results on a cadence
  • Both expose an API and embed into your own application
Hex wins

The notebook, and what only a notebook does

  • SQL cells and Python cells in one reactive document
  • A free tier for individuals and small projects
  • Hex Magic for AI-assisted authoring inside the notebook
  • An app builder that turns a notebook into a shareable tool
  • Fully managed — nothing for your team to run
Side by Side

Feature-by-feature comparison

The features teams actually evaluate when Hex starts to hit its ceiling.

Legend Included Partial / extra cost Not available
Feature RecommendedQrlySelf-hosted · Belgium HexCloud · notebook platform
Self-hostable on your own infraIncludedPrivate deployment on enterprise plans
No per-user licence countingIncludedPer user, editors and viewers
Built-in customer embed portalIncludedEmbedded apps, no per-tenant portal
Alerts on saved questions (email, Slack, webhook)IncludedScheduled runs with notifications
Native scheduled subscription (4 providers)IncludedScheduled exports to email and Slack
Visual query builder and raw SQL, round-trip convertibleSQL ⇄ visualSQL and Python cells, no visual spec
Azure AD + Google + LDAP + Basic simultaneouslyIncludedSAML SSO on enterprise plans
OIDC SSO user provisioningIncludedEnterprise tier only
AI with on-prem option (Ollama, LM Studio)IncludedHex Magic is cloud-only
Multi-tenant architecture out of the boxIncludedWorkspaces, no tenant hierarchy
40 connection types, 12 SQL dialectsIncludedBroad warehouse connectors
Flat pricing (unlimited users)IncludedPer user, per month
Productive in under 5 minutesIncludedHex is fast to start
EU data residency (native, not a tier)IncludedVendor cloud; private deploy on enterprise
No add-on purchase required for the basicsIncludedKey controls on enterprise plans
Dashboards with cascade filters and live pushIncludedNotebook apps, not dashboards
REST API + webhooksIncludedIncluded
OLAP models with ROLLUP, CUBE, prior-periodIncludedWrite it in SQL; no model layer
Self-service for people who do not write codeIncludedAuthors write SQL or Python
Why Teams Outgrow It

Four reasons teams outgrow Hex

From real migration conversations with data teams. Hex is a great place to do the analysis — and a hard place to distribute it.

01 / Embedded Analytics

Everybody who looks is a seat

Hex is licensed per user, and the people who only ever read a result are still users. That is fine for a data team of eight. It stops being fine the day a hundred people in operations want the same weekly number, or a customer asks to see their own data — the economics quietly discourage exactly the distribution you built the report for.

Qrly does not count people at all — it is priced on your revenue. Internal readers are free; external ones are embedded, through a signed JWT with locked parameters the viewer cannot override, across one customer tenant or five hundred. Scheduled subscriptions cover everyone who would rather receive the number than go and look for it.

02 / Governance

A notebook is not a governed model

In a notebook, the definition of revenue lives in whichever cell computed it. Two analysts write two slightly different queries, both defensible on their own terms, and nobody notices until the two numbers meet in the same meeting. There is no layer above the SQL where a measure is defined once for everybody, because no notebook is built to hold one.

Qrly has that layer: a star or snowflake model over the connection with a dimension and measure catalogue, named hierarchies, and always-applied model filters that act as a security boundary. Above it sit verified questions with an audit log, a per-user daily query budget and a query governor. The definition is written once; the analysis on top of it is the part people are free to improvise.

03 / Distribution

Notebooks scale to analysts, not to a company

Hex is superb for the person authoring the analysis. It is much weaker for the two hundred people downstream who only want to change the date range: a published app exposes the parameters its author thought to expose, and everything else is a request back to the analyst. The queue that forms in front of the data team is the real cost, and it never shows up on the invoice.

Qrly's tenant → organisation → project → collection hierarchy is the actual shape of a business, with permissions at every level. Dashboards carry cascade filters people drive themselves, any chart point or table row drills through to the underlying records, and question-as-view lets an analyst's work become the source somebody else builds on. The analyst publishes a model; the organisation self-serves above it.

04 / Hidden cost

The bill grows with the audience

Hex is licensed per user, with editor seats priced above viewer seats. Every additional reader is another line item, and the natural response — share fewer things with fewer people, or funnel everything through a handful of accounts — is the exact opposite of what a reporting platform is supposed to do for you.

Qrly is priced on revenue, not seats: unlimited users, unlimited projects, unlimited tenants, in one self-hosted deployment. Whether the weekly number goes to nine people or nine hundred becomes a decision about your business rather than a decision about your licence.

Total Cost

Pricing, honestly

Our own list price in full, and an honest account of how Hex charges. The Qrly column is the published schedule evaluated at €15M of revenue — the number of people using it does not move it.

Methodology, 28 August 2026. Qrly publishes a complete rate card, so the figures in our column are quoted exactly. The other column describes a pricing model rather than quoting a number: vendor list prices change without notice and several of these vendors do not publish one at all. For current figures, go to the vendor’s own pricing page.

Qrly

Annual licence · priced on your revenue · unlimited users, one organisation, one installation

  • Annual licence at €15M revenue €6,300
  • Per analyst / per viewer €0
  • Per query, per credit, per capacity unit €0
  • Embedded dashboard consumers €0
  • Embedding, alerts, OIDC/SSO, row-level rules Included at every tier
  • Self-hosting and bring-your-own LLM Included at every tier

Three years of licence: €18,900
That is our published schedule evaluated at €15M of revenue — 0.18% of the first €500k, then 0.12%, 0.0525% and 0.027% on each tranche above it. It does not move when you add users. The whole rate card, from the €900 floor upward, is on the pricing page.

Hex

Per seat, per month · a free tier, then published and quoted plans

  • How it charges Per seat, per month
  • Free tier Community use, limited
  • Editor seats Priced above viewer seats
  • Viewer and app-user seats Also licensed
  • Private deployment Enterprise agreement, quoted
  • List prices Published for the standard plans — check hex.tech/pricing

Hex’s meter is seats, and the seat count is what moves the moment a notebook turns into something the business reads every morning. That is the point at which the cost of Hex stops tracking the size of the data team and starts tracking the size of the company. Qrly’s licence tracks neither — it tracks turnover, once a year.

Migration

Moving from Hex to Qrly

Most teams move in a couple of days, and many keep Hex alive for exploratory work. The path below is the one we recommend when recurring reporting, embedding or the seat bill is the pain point.

The standard migration path

There is nothing to export. Qrly connects to the same databases your Hex projects query, so the work is rebuilding definitions rather than moving rows.

  1. Recreate the connections. Add each source in Qrly, test it before saving, then run a schema sync so the visual builder and the SQL autocomplete know the tables. Credentials are AES-encrypted at rest, execution limits are set per connection, and the pool hands out read-only connections.
  2. Paste the SQL cells in. A flat SELECT is reverse-engineered into a visual definition — joins, filters, group by, having, order by with NULL ordering, limit and offset — with CTEs, UNION and subqueries reported as lossy features rather than dropped. Anything that will not convert still runs as native SQL, with template variables bound as prepared-statement parameters.
  3. Define the model once. Where several projects recompute the same measures, build one OLAP model — fact table, dimension joins, a measure and dimension catalogue, named hierarchies — and everything above it inherits the definitions, the year-to-hour time drill, prior-period comparison and the always-applied model filters.
  4. Rebuild published apps as dashboards. Cards drop onto a 12-column grid with cascade filters mapped per card, live push on an interval or a Postgres LISTEN/NOTIFY channel, and signed-JWT embedding for anything customer-facing. Readers stop being seats.
  5. Keep Hex for what only Hex does. Python-heavy exploration, statistical work and one-off deep dives are worth keeping in a notebook. Move the recurring reporting — the queries that run every Monday for people who do not write SQL — into Qrly, and let the two live side by side.
FAQ

Common questions

Does Qrly replace Hex for our analysts?
It can, but it does not have to. Plenty of teams keep Hex for exploratory and statistical work — Python cells, a model fitted in a notebook, a one-off deep dive — and move the recurring, governed reporting into Qrly: saved questions, OLAP models, dashboards, alerts and embedded views that non-analysts drive themselves. The two overlap in the SQL layer and diverge on everything either side of it.
How do we move our Hex projects across?
The SQL comes across directly. Paste a SQL cell into Qrly and a flat SELECT is reverse-engineered into a visual definition — joins, filters, group by, having, order by with NULL ordering, limit and offset — with CTEs, UNION and subqueries reported as lossy features rather than dropped silently. Anything that will not convert still runs as native SQL, with template variables bound as prepared-statement parameters. Connections are recreated against the same databases, so no data moves; Python cells have no equivalent and are better left where they are.
What about our Python cells?
Qrly has no Python runtime, and pretending otherwise would waste your time. What it replaces is the SQL-and-charts half of a notebook: a query document compiled to 12 SQL dialects, 13 visualisation types with trendlines, moving averages and a 1 to 24 period forecast, drill-through into the underlying rows, and dashboards non-analysts can filter themselves. Work that genuinely needs pandas or scikit-learn stays in Hex — the two are complements, not substitutes, for most data teams.
Can we run Hex on our own infrastructure?
Not in the ordinary way. Hex is a cloud service, and a private single-tenant deployment is something negotiated as part of an enterprise agreement rather than a box you install. Qrly self-hosts as a single deployment on any Linux box or Kubernetes cluster at every price point — no phone-home, no user minimum, EU data residency by default — and the AI layer can point at an Ollama or LM Studio endpoint on the same network, so the prompts do not leave either.
Can we put a dashboard in front of our own customers?
Yes, and it is the same surface your analysts use. Qrly embeds a question or a whole dashboard through a signed JWT with locked parameters the viewer cannot override, across as many customer tenants as you like and with no per-viewer seat. Scheduled subscriptions deliver to multiple channels for the people who would rather receive the number than go and look for it.
Cost for 50 users over 3 years?
Qrly is priced on revenue, not seats: a €15M-revenue company pays €6,300 a year — €18,900 over three years — for unlimited everything, one organization, one installation. Hex is licensed per user, with editor seats priced above viewer seats, so the bill tracks headcount in both directions. That is the structural difference: Qrly's number moves with your turnover, not with how many people you let look at a dashboard.
See More Comparisons

Evaluating Qrly against another tool? Jump to the detailed side-by-side.

Keep Hex. Add the governed layer a notebook cannot give you.

OLAP models, Alerts, embed portal, QQL, scheduled subscriptions. Self-hostable. Flat pricing. Made in Belgium. See Qrly Pricing Screenshots
Machine translation

Read this site in your language.

The site is written in English. Google Translate can show it in Dutch, French and Luxembourgish. The translation is automatic and not reviewed by us: for prices and terms the English page is the one that counts.

Translation by Google. Choosing a language loads Google Translate, sends the text of the pages you open to Google and stores one cookie in this browser until you close it. English switches all of that off. Google privacy policy