Select the name of your project if it is not already selected at the top of
the page.
To view BigQuery resources, select Dashboards >
BigQuery. On this page you see a list of tables, events, and incident
reporting that are user-configurable as well as charts of project metrics or
dataset metrics.
Visualize slots available and slots allocated
To visualize the slots available and slots allocated to your project, go to the
dashboard for BigQuery described in
Viewing the Cloud Monitoring dashboard:
In the Trusted Cloud console, go to the Monitoring page.
In the Resource & Metric section, click Select a metric.
Select Consumer Quota > Quota > Quota limit, and then click Apply.
Click add_boxAdd filter, and then in the Label menu, select limit_name.
In the Value menu, select the quota for which you want to view the metrics.
Create an alert
To create an alerting policy that triggers when the 99th percentile of the
execution time of a BigQuery query
exceeds a user-defined limit, use the following settings.
If you use the search bar to find this page, then select the result whose subheading is
Monitoring.
If you haven't created your notification channels and if you want to be notified, then click
Edit Notification Channels and add your notification channels. Return to the
Alerting page after you add your channels.
From the Alerting page, select Create policy.
To select the resource, metric, and filters, expand the Select a metric menu and
then use the values in the New condition table:
Optional: To limit the menu to relevant entries, enter the resource or
metric name in the filter bar.
Select a Resource type. For example, select VM instance.
Select a Metric category. For example, select instance.
Select a Metric. For example, select CPU Utilization.
Select Apply.
Click Next and then configure the alerting policy trigger.
To complete these fields, use the values in the Configure alert trigger table.
Click Next.
Optional: To add notifications to your alerting policy, click
Notification channels. In the dialog, select one or more notification
channels from the menu, and then click OK.
To be notified when incidents are openend and closed, check
Notify on incident closure. By default, notifications are sent only when
incidents are openend.
Optional: Update the Incident autoclose duration. This field determines when
Monitoring closes incidents in the absence of metric data.
Optional: Click Documentation, and then add any information that you
want included in a notification message.
Click Alert name and enter a name for the alerting policy.
Click Create Policy.
New condition Field
Value
Resource and Metric
In the Resources menu, select BigQuery Project.
In the Metric categories menu, select Query.
In the Metrics menu, select Query execution times.
Filter
Across time series
Time series group by
priority
Across time series
Time series aggregation
99th percentile
Rolling window
5 m
Rolling window function
sum
Configure alert trigger Field
Value
Condition type
Threshold
Alert trigger
Any time series violates
Threshold position
Above threshold
Threshold value
You determine this value; however, a threshold of 60 seconds is recommended.
Retest window
most recent value
Metrics available for visualization
The following metrics are available, time delayed up to several hours.
Resource type
Name
Units
Description
BigQuery
Scanned bytes
Bytes per minute
Number of bytes scanned.
BigQuery
Scanned bytes billed
Bytes per minute
Number of bytes sent for billing when using the on-demand analysis model.
Scanned bytes and scanned bytes billed can differ as charges are rounded up,
with a minimum amount of data processed per query.
The amount of queries that did not use BI Engine as a rate. You can set the Group By option to reason to separate the count into different fallback reasons, including:
Number of BigQuery slots allocated for query jobs in the project.
Slots are allocated per billing account and multiple projects can share the same
reservation of slots.
BigQuery
Slots used by project and job type
Slots
Number of slots allocated to the project at any time separated by
job type.
This can also be thought of as the number of slots being utilized by that
project. Load and export jobs are free operations, and they run
in a public pool of resources.
Slots are allocated per billing account and multiple projects can share the same
reservation of slots.
BigQuery
Slots used by project, reservation, and job type
Slots
Number of BigQuery slots allocated for project. Slot allocation can be broken down based on reservation and job type.
BigQuery
Total slots
Slots
Total number of slots available to the project.
If the project shares a reservation of slots with other projects the slots being
used by the other projects is not depicted.
BigQuery
Slots used across projects in reservations
Slots
Number of BigQuery slots allocated across projects in the reservation. Note that the metric data is only reported while at least one project has been assigned to the reservation and is consuming slots. As an alternative, consider querying reservations information from INFORMATION_SCHEMA.
BigQuery
Slots used by project in reservation
Slots
Number of BigQuery slots allocated for project in the reservation.
BigQuery continuous job
Estimated backlog logical bytes
Bytes
The number of bytes in the backlog for each stage of the continuous job.
BigQuery continuous job
Estimated backlog records
Records
The estimated number of backlog records for each stage of the continuous job.
BigQuery continuous job
Estimated bytes processed
Bytes
The estimated number of bytes processed for each stage of the continuous job.
BigQuery continuous job
Output watermark
Timestamp
The most recent timestamp, in microseconds since the epoch, up to which
all data has been processed by this stage of the continuous job.
BigQuery continuous job
Records read
Records
The number of input records read for each stage of the continuous job.
BigQuery continuous job
Records written
Records
The number of output records written for each stage of the continuous job.
BigQuery continuous job
Slots used
Slot milliseconds
The total slot milliseconds used by the continuous job.
BigQuery dataset
Stored bytes
Bytes
Bytes stored in the dataset - For the 100 largest tables in the dataset,
bytes stored is displayed for each individual table (by name). Any
additional tables in the dataset (beyond the 100 largest) are reported as
single sum, and the table name for the summary is an empty string.
BigQuery dataset
Table count
Tables
Number of tables in the dataset.
BigQuery dataset
Uploaded bytes
Bytes per minute
Number of bytes uploaded to any table in the dataset.
BigQuery dataset
Uploaded rows
Rows per minute
Number of records uploaded to any table in the dataset.
If no queries are running, then no data is returned for slots allocated, slots available, or any query-related variables. Zoom out to see data.
If queries are running in both the US and the EU, then slots allocated and
slots available might be incorrect.
Slots allocated is reported as the average value in a time window (the width
of the time window depends on the zoom level of the chart). Zooming in and
out can change the value of slots allocated. Zooming in to a time window of
1 hr or less shows the true values of slots allocated. At this range for any
time visible on the chart, avg(slots allocated) = slots allocated.
The data in Cloud Monitoring charts pertains only to the selected
project.
Metrics are instantaneous values, sampled at a point in time, and might miss
data points between sample intervals. For example, the job count metric is
sampled every minute. The value is the number of jobs at that particular
time, not the maximum number of jobs throughout the entire minute.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-25 UTC."],[[["\u003cp\u003eUse Cloud Monitoring to create dashboards to visualize BigQuery resource metrics, including slot utilization and query execution times.\u003c/p\u003e\n"],["\u003cp\u003eCloud Monitoring allows the creation of custom charts to display various metrics, such as query execution time, scanned bytes, and slot usage.\u003c/p\u003e\n"],["\u003cp\u003eYou can view quota usage and limits for the BigQuery Storage Write API within Cloud Monitoring.\u003c/p\u003e\n"],["\u003cp\u003eAlerting policies can be created to trigger notifications when specific metrics, like query execution times, exceed defined thresholds, such as 60 seconds.\u003c/p\u003e\n"],["\u003cp\u003eVarious metrics are available for visualization in Cloud Monitoring, including scanned bytes, query counts, slot usage, and dataset-related data like stored bytes and table counts.\u003c/p\u003e\n"]]],[],null,["# Create dashboards, charts, and alerts\n=====================================\n\nThis document describes how to create charts and alerts to monitor\nBigQuery resources using Cloud Monitoring.\n\nBefore you begin\n----------------\n\nBefore you use Cloud Monitoring, ensure that you have the following:\n\n- A Cloud Billing account.\n- A BigQuery project with billing enabled.\n\nOne way to ensure that you have both is to complete the\n[Quickstart using the Google Cloud console](/bigquery/docs/quickstarts/quickstart-web-ui).\n\nView and create dashboards, charts, and alerts\n----------------------------------------------\n\n### View the Cloud Monitoring dashboard\n\nTo use Cloud Monitoring to monitor your BigQuery project:\n\n1. In the Google Cloud console, go to the **Monitoring** page.\n\n [Go to Monitoring](https://console.cloud.google.com/monitoring)\n\n \u003cbr /\u003e\n\n2. Select the name of your project if it is not already selected at the top of\n the page.\n\n3. To view BigQuery resources, select **Dashboards \\\u003e\n BigQuery**. On this page you see a list of tables, events, and incident\n reporting that are user-configurable as well as charts of project metrics or\n dataset metrics.\n\n### Visualize slots available and slots allocated\n\nTo visualize the slots available and slots allocated to your project, go to the\ndashboard for BigQuery described in\n[Viewing the Cloud Monitoring dashboard](#view-dashboards):\n\n1. In the Google Cloud console, go to the **Monitoring** page.\n\n [Go to Monitoring](https://console.cloud.google.com/monitoring)\n\n \u003cbr /\u003e\n\n2. Select **Dashboards \\\u003e BigQuery**.\n\n3. On the Cloud Monitoring dashboard for BigQuery, scroll to\n the chart named **Slot Utilization**.\n\nThe **Slot Utilization** chart appears on both the main Cloud Monitoring\ndefault dashboard and the Cloud Monitoring dashboard for\nBigQuery.\n\n### Create a dashboard and chart\n\nDisplay the metrics collected by Cloud Monitoring in your own charts and\ndashboards:\n\n1. In the Google Cloud console, go to the **Monitoring** page.\n\n [Go to Monitoring](https://console.cloud.google.com/monitoring)\n\n \u003cbr /\u003e\n\n2. Select **Dashboards \\\u003e Create Dashboard**.\n\n3. Click **Add Chart**. You see the Add Chart page:\n\n4. In the **Find resource type and metric** panel fields:\n\n - For the **Resource type** drop-down list, select **Global** . You might need to expand the list of **Resource types** for the **Global** option to be visible.\n - For the **Metric** drop-down list, select **Query execution time**.\n5. The **Aggregation** pane fields control how the execution-time data are\n displayed. You can modify the default settings for these fields.\n\n6. Click **Save**.\n\n### View quota usage and limits\n\nIn Cloud Monitoring, you can view metrics for quota usage and limits:\n\n1. In the Google Cloud console, go to the **Monitoring** page.\n\n [Go to Monitoring](https://console.cloud.google.com/monitoring)\n\n \u003cbr /\u003e\n\n2. In the navigation pane, select\n **Metrics explorer**.\n\n3. In the toolbar, select **Explorer \\\u003e Configuration**.\n\n4. In the **Resource \\& Metric** section, click **Select a metric**.\n\n5. Select **Consumer Quota \\\u003e Quota \\\u003e Quota limit** , and then click **Apply**.\n\n6. Click add_box **Add filter** , and then in the **Label** menu, select **limit_name**.\n\n7. In the **Value** menu, select the quota for which you want to view the metrics.\n\n| **Note:** You can view metrics for quota usage and limits only for the [BigQuery Storage Write API's](/bigquery/quotas#write-api-limits) concurrent connections and throughput quotas.\n\n### Create an alert\n\nTo create an alerting policy that triggers when the 99th percentile of the\nexecution time of a [BigQuery](/bigquery/docs) query\nexceeds a user-defined limit, use the following settings.\n\n#### Steps to create an [alerting policy](/monitoring/alerts/using-alerting-ui#create-policy).\n\nTo create an alerting policy, do the following:\n\n1. In the Google Cloud console, go to the\n *notifications* **Alerting** page:\n\n [Go to **Alerting**](https://console.cloud.google.com/monitoring/alerting)\n\n \u003cbr /\u003e\n\n If you use the search bar to find this page, then select the result whose subheading is\n **Monitoring**.\n2. If you haven't created your notification channels and if you want to be notified, then click **Edit Notification Channels** and add your notification channels. Return to the **Alerting** page after you add your channels.\n3. From the **Alerting** page, select **Create policy**.\n4. To select the resource, metric, and filters, expand the **Select a metric** menu and then use the values in the **New condition** table:\n 1. Optional: To limit the menu to relevant entries, enter the resource or metric name in the filter bar.\n 2. Select a **Resource type** . For example, select **VM instance**.\n 3. Select a **Metric category** . For example, select **instance**.\n 4. Select a **Metric** . For example, select **CPU Utilization**.\n 5. Select **Apply**.\n5. Click **Next** and then configure the alerting policy trigger. To complete these fields, use the values in the **Configure alert trigger** table.\n6. Click **Next**.\n7. Optional: To add notifications to your alerting policy, click\n **Notification channels** . In the dialog, select one or more notification\n channels from the menu, and then click **OK**.\n\n To be notified when incidents are openend and closed, check\n **Notify on incident closure**. By default, notifications are sent only when\n incidents are openend.\n8. Optional: Update the **Incident autoclose duration**. This field determines when Monitoring closes incidents in the absence of metric data.\n9. Optional: Click **Documentation**, and then add any information that you want included in a notification message.\n10. Click **Alert name** and enter a name for the alerting policy.\n11. Click **Create Policy**.\n\nMetrics available for visualization\n-----------------------------------\n\nThe following metrics are available, time delayed up to several hours.\n\nFor a complete list of available Google Cloud metrics, see [Google Cloud metrics](/monitoring/api/metrics_gcp#gcp-bigquerybiengine).\n\nKnown issues\n------------\n\n- If no queries are running, then no data is returned for slots allocated, slots available, or any query-related variables. Zoom out to see data.\n\n- If queries are running in both the US and the EU, then slots allocated and\n slots available might be incorrect.\n\n- Slots allocated is reported as the average value in a time window (the width\n of the time window depends on the zoom level of the chart). Zooming in and\n out can change the value of slots allocated. Zooming in to a time window of\n 1 hr or less shows the true values of slots allocated. At this range for any\n time visible on the chart, `avg(slots allocated) = slots allocated`.\n\n- The data in Cloud Monitoring charts pertains only to the selected\n project.\n\n- Metrics are instantaneous values, sampled at a point in time, and might miss\n data points between sample intervals. For example, the job count metric is\n sampled every minute. The value is the number of jobs at that particular\n time, not the maximum number of jobs throughout the entire minute."]]