Get started with reservations

Learn how to create and assign a reservation in BigQuery.

BigQuery reservations let you purchase dedicated processingcapacity, measured in slots, instead of payingon-demand pricing per each byteof data processed. With reservations, costs are more predictable and workloadperformance is often more consistent. Reservations are associated with editionsthat provide scaled pricing and meet the requirements of differentorganizations.

When working with reservations, you can create assignments, which link specificGoogle Cloud projects, folders, or your entire organization to a particularreservation. This lets you isolate workloads, ensure resources for criticaltasks, and manage your BigQuery spending more effectively.

In this tutorial, you create a Standard edition reservation with 100autoscaling slots and assign a project to the reservation. You can then chooseto delete the reservation to avoid incurring costs.

Caution: This tutorial incurs charges. Before purchasing slots, understandreservationpricing.To avoid incurring charges after you complete this tutorial, make sure to deletethe reservation as described inClean up.

To follow step-by-step guidance for this task directly in the Google Cloud console, clickGuide me:

Guide me


Before you begin

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.create permission.Learn how to grant roles.
    Note: If you don't plan to keep the resources that you create in this procedure, create a project instead of selecting an existing project. After you finish these steps, you can delete the project, removing all resources associated with the project.

    Go to project selector

    You can create a separate Google Cloud project to administer the reservation andgive it a descriptive name likebq-COMPANY_NAME-admin.
  2. Verify that billing is enabled for your Google Cloud project.

  3. Enable the BigQuery Reservation API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enable permission.Learn how to grant roles.

    Enable the API

    For more information, seeEnable the BigQuery Reservation API.

  4. In the Google Cloud console, view your slot quotas:

    View your slot quotas

    To purchase slots, you must have enough slot quota for the region in whichyou want to purchase slots.

    If your slot quota for the region is less than the number of slotsyou want to purchase, seeRequest a quota increase.

Required roles

To get the permissions that you need to create a reservation, assign a project to a reservation, and delete the reservation, ask your administrator to grant you theBigQuery Resource Editor (roles/bigquery.resourceEditor) IAM role on the project. For more information about granting roles, seeManage access to projects, folders, and organizations.

You might also be able to get the required permissions throughcustom roles or otherpredefined roles.

Create an autoscaling reservation

Create a reservation namedtest in theUS multi-region, and allocate amaximum of 100 autoscaling slots to it. Autoscaling slots scale up or down basedon your workload demands.

  1. In the Google Cloud console, go to theBigQuery page.

    Go to BigQuery

  2. In the navigation menu, clickCapacity management.

  3. ClickCreate reservation.

  4. In theReservation name field, entertest.

  5. In theLocation drop-down list, selectus (multiple regions in United States).

  6. In theEdition list, selectStandard. For more information, seeUnderstand BigQuery editions.

  7. ForMax reservation size selector, selectSmall (100 Slots).

  8. Leave the other default setting as they are, and clickSave.

To learn how to create a reservation using SQL or the bq tool,seeCreate a reservation with dedicated slots.

Assign a project to a reservation

Assign a project to thetest reservation. Any query jobs that run from thisproject will use the pool of slots from thetest reservation. (In thistutorial, you don't run a job.)

You can assign any project that's in the same organization and region as theadministration project where you created the reservation.

  1. In the Google Cloud console, go to theBigQuery page.

    Go to BigQuery

  2. In the navigation menu, clickCapacity management.

  3. Click theSlot reservations tab.

  4. In theActions column for the reservation namedtest, clickActions.

    Assignments project picker.

  5. ClickCreate assignment.

  6. In theSelect an organization, folder or project section, clickBrowse.

  7. Browse or search for the project, and then select it.

  8. ClickCreate.

When you create a reservation assignment, wait at least 5 minutes before runninga query. Otherwise the query might be billed using on-demand pricing.

To learn how to assign a project to a reservation using SQL or the bq tool,seeAssign a project or folder to a reservation.

Clean up

To avoid incurring charges to your Google Cloud account for the resources used on this page, follow these steps.

Delete the project

The easiest way to eliminate billing is to delete the project that you created for the tutorial.

To delete the project:

    Caution: Deleting a project has the following effects:
    • Everything in the project is deleted. If you used an existing project for the tasks in this document, when you delete it, you also delete any other work you've done in the project.
    • Custom project IDs are lost. When you created this project, you might have created a custom project ID that you want to use in the future. To preserve the URLs that use the project ID, such as anappspot.com URL, delete selected resources inside the project instead of deleting the whole project.

    If you plan to explore multiple architectures, tutorials, or quickstarts, reusing projects can help you avoid exceeding project quota limits.

  1. In the Google Cloud console, go to theManage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then clickDelete.
  3. In the dialog, type the project ID, and then clickShut down to delete the project.

Delete the reservation

When you delete a reservation, any jobs that are currently executing with slotsfrom that reservation will fail. To prevent errors, allow in-flight jobs tocomplete before deleting the reservation.

  1. In the Google Cloud console, go to theBigQuery page.

    Go to BigQuery

  2. In the navigation menu, clickCapacity management.

  3. Click theSlot reservations tab.

  4. For the reservation namedtest, clickToggle node.

  5. For each assignment in that reservation, clickActions, and then clickDelete.

  6. In theActions column for the reservation namedtest, clickActions.

  7. ClickDelete.

To learn how to delete a reservation using SQL or the bq tool, seeDelete a reservation.

What's next

Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2026-02-19 UTC.