# Pricing comparison > BigQuery bills a query either by bytes scanned (on-demand) or by slot time (editions). Querylab.io prices every query both ways and tells you when the other model would have been meaningfully cheaper. Source: https://docs.querylab.io/writing-sql/pricing-comparison/ **Prism Insights → Model Hint** **PRISM INSIGHTS**
Query Complexity
moderate · 3 joins, 1 window function
Last run
On-demand: $1.99 (billed)
Slots (Enterprise): $0.41
Enterprise saves ~$1.58 (-79%)
Currently using on-demand billing
All Available Reservations
Use Reservation — prod-enterprise (ENTERPRISE, us)
After a run, both prices are shown; the one you were billed under is marked. ## Where it shows up - **Status bar.** When the other model would save a meaningful amount on the current estimate, a short _Consider Enterprise_ (or _Consider on-demand_) hint appears next to the cost. Hover it for the estimated saving. - **Estimate footer.** The same hint as a `↓ Enterprise` chip under the editor. - **Prism Insights → Model Hint.** The full picture: the query's complexity, both prices for the last run, and, if your billing project has reservations, a **Use Reservation** action that adds `SET @@reservation = '…'` to the query. - **Query history.** A _Pot. Savings_ column with the same per-query comparison; see [query history](https://docs.querylab.io/writing-sql/query-history/). ## How the prices are worked out Before the run both prices come from the dry run; the slot price is an estimate, so check the Model Hint tab after the run for the actual slot time. The edition rate is your billing project's own edition if it runs on a reservation, otherwise the edition you pick in settings (below). Organization admins can set org-wide discounts and a default commitment tier. > **Estimates are gross.** BigQuery's free tier (1 TB of on-demand scanning per month) is not subtracted. A query that would actually be free still shows a price. ## When a hint appears A hint appears when the other model would save a meaningful amount on this query; its colour shows how large the saving is. Already on the cheaper model reads **Optimal**. ## How your billing model is detected Querylab.io detects whether your billing project runs on a reservation (editions) or on-demand. The status bar's ⚙ popover shows the result under **Run on**: **status bar → ⚙** - Run on: prod-analytics. Using reservation: prod-enterprise (ENTERPRISE) - Reservation override: Use from project. Overrides billing project reservation for this query **Reservation override** lists the project's reservations plus **On-demand**; choosing one writes `SET @@reservation = '…'` at the top of the query, and the ⚙ gets a dot to show the tab is overriding the project default. On a reservation project the status bar stops showing a dollar figure for the query (you're not billed per byte) and shows bytes only. While the job runs, a separate **Slots: ~0.12h (~$0.01)** item ticks up from the job timeline. ## Turning it off or choosing the edition One setting controls the comparison: Settings → Limits & Costs → Cost Display (the full section is under [Settings](https://docs.querylab.io/settings/#limits--costs)). - BigQuery edition for On-Demand vs Reservation price comparisons: Enterprise **Disabled** removes the comparison everywhere: status bar, insights, history. **Standard**, **Enterprise** (the default), or **Enterprise Plus** is the edition slot time is priced at when the billing project isn't on a reservation. The setting is locked in Playground.