---
title: Create and manage Instance templates
description: This page explains how to create and manage Instance templates
tags: instance template create delete
dates:
  validation: 2025-07-09
  posted: 2021-07-09
---
import Requirements from '@macros/iam/requirements.mdx'

An Instance template saves a predefined, immutable server configuration — Instance type, boot image, network and security, tags, and cloud-init — so you can deploy consistent Instances repeatedly without re-entering the same parameters each time. Templates are commonly used to define a standard, reusable configuration for a given server role.

You cannot update an Instance template after it is created. Instead, create a new instance template or create an Instance from the template while overriding the template's properties.

<Requirements />

    - A Scaleway account logged into the [console](https://console.scaleway.com)
    - [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization
    - An [SSH key](/organizations-and-projects/how-to/create-ssh-key/)

## Create an Instance template

<Tabs>

  <TabsTab label="Console - Linux">

    1. In the **Compute** section of the side menu, click **CPU & GPU Instances**. The [Instances dashboard](https://console.scaleway.com/instance/servers) opens.
    2. In the **Templates** tab, click **Create Instance template** > **Create CPU Instance template**. The Instance template creation wizard appears.
    3. Select an Instance range based on your usage. Instance offers vary in pricing, processing power, memory, storage, and bandwidth. [Discover the best Instance type for your needs](/instances/reference-content/choosing-instance-type/).
    4. Choose an Instance configuration from the list and click **Select**.
    5. Select the Availability Zone in which you want to deploy your Instance and click **Configure Instance**.
    6. Configure the Instance properties as follows:
        - **Name your Instance**, or keep the randomly-generated name. Optionally, you can add [tags](/instances/concepts/#tags) to help organize your Instances.
        - **Choose an image** to run on your Instance. <br />
        This can be an operating system, an InstantApp, or a custom image. [Check all available Linux distributions and InstantApps](/instances/reference-content/images-and-instantapps/).
        - **Add volumes** - the storage spaces used by your Instances. A block volume with a default name and 5,000 IOPS is automatically created for your system volume. You can customize this volume and attach up to 16 local and/or block type volumes as needed.
        <Message type="important">
            - The volume containing your OS image must be at least 10 GB. For a GPU OS, 125 GB is recommended.
            - When multiple Block Storage volumes are attached to your Instance, the primary volume hosts the OS and is required to boot the Instance. You can change the boot volume after creation. See [How to change the boot volume](/instances/how-to/use-boot-modes/#how-to-change-the-boot-volume).
            - Booting from a volume with no OS, or from one of several volumes sharing the same OS, can lead to unpredictable boot behavior.
        </Message>
        - **Configure the network and security** settings for the Instance template.
          - Leave the option enabled to assign a **Public IPv4** to the Instance. You can either allocate a new IPv4 address or select one or multiple existing IPv4s. Alternatively, disable it if you do not want an IPv4.
          - Leave the option enabled to assign a **Public IPv6** to the Instance. You can either allocate a new IPv6 address or select one or multiple existing IPv6s. Alternatively, disable it if you do not want an IPv6.
          - Select a security group and a placement group. <br/>

        You can attach up to 5 IPv4 and 5 IPv6 addresses to an Instance, useful for running different services or applications on the same Instance. <br/>

        - (Optional) Click **Cloud-init** to [configure a cloud-init configuration](/instances/concepts/#cloud-init), or leave the default value.
        Cloud-init scripts are the standard way to automate Instance setup, such as installing software or configuring users and system settings at first boot.
        - **Verify the [SSH keys](/organizations-and-projects/concepts/#ssh-key)** that will give you access to your Instance template.
    7. Click **Review** to see an order summary, including the estimated cost of your Instance based on the specifications you chose.
    8. Click **Create Instance template**.

        <Message type="important">
        An Instance template is immutable once created. You cannot edit a template's configuration afterward — create a new template if you need to change any parameter.
       </Message>

    Your Instance template is created and appears in the **Templates** list. You can now use it to deploy new Instances with a guaranteed, consistent configuration.

  </TabsTab>

  <TabsTab label="Console - Windows">

    1. In the **Compute** section of the side menu, click **CPU & GPU Instances**. The [Instance dashboard](https://console.scaleway.com/instance/servers) opens.
    2. In the **Templates** tab, click **Create Instance template** > **Create CPU Instance template**. The Instance template creation wizard appears.
    3. Select an Instance range based on your usage. Instance offers vary in pricing, processing power, memory, storage, and bandwidth. [Discover the best Instance type for your needs](/instances/reference-content/choosing-instance-type/).
    4. Choose a **Windows Instance** type from the **General Purpose** range and click **Select**. A pop-up appears.
    5. Select the Availability Zone in which you want to deploy your Instance and click **Configure Instance**.
    6. Configure the Instance properties as follows:
        - **Name your Instance**, or keep the randomly-generated name. Optionally, you can add [tags](/instances/concepts/#tags) to help organize your Instances.
        - **Choose a Windows image** to run on your Instance. <br />
        - **Add volumes** - the storage spaces used by your Instances. A block volume with a default name and 5,000 IOPS is automatically created for your system volume. You can customize this volume and attach up to 16 local and/or block type volumes as needed.
          <Message type="important">
            - The volume containing your Windows Server image must be at least 25 GB.
            - When multiple Block Storage volumes are attached to your Instance, the primary volume hosts the OS and is required to boot the Instance. You can change the boot volume after creation. See [How to change the boot volume](/instances/how-to/use-boot-modes/#how-to-change-the-boot-volume).
            - Booting from a volume with no OS, or from one of several volumes sharing the same OS, can lead to unpredictable boot behavior.
          </Message>

        To use **[Block Storage Low Latency](/block-storage/) 15k**, your Instance must provide at least 3 GiB/s of block bandwidth. 
        See [Scaleway Instances internet and Block Storage bandwidth overview](/instances/reference-content/instances-bandwidth-overview/) to check whether an Instance type meets this requirement, or query the [Instances API](https://www.scaleway.com/en/developers/api/instances/#path-instance-types-list-instance-types) to check the `block_bandwidth` field at `/instance/v1/zones/{zone}/products/servers`.<br/> This field gives you the exact block bandwidth for each Instance type, so you can confirm compatibility with high-performance storage before provisioning.<br/>
        
        - **Configure the network and security** settings for the Instance template.
          - Leave the option enabled to assign a **Public IPv4** to the Instance. You can either allocate a new IPv4 address or select one or multiple existing IPv4s. Alternatively, disable it if you do not want an IPv4.
          - Leave the option enabled to assign a **Public IPv6** to the Instance. You can either allocate a new IPv6 address or select one or multiple existing IPv6s. Alternatively, disable it if you do not want an IPv6. <br/>

          You can attach up to 5 IPv4 and 5 IPv6 addresses to an Instance, useful for running different services or applications on the same Instance.<br/>

        - (Optional) Click **Advanced options** to configure a [cloud-init configuration](/instances/concepts/#cloud-init). Otherwise, leave these options at their default values.
          Cloud-init scripts are the standard way to automate Instance setup, such as installing software or configuring users and system settings at first boot.
        - **Choose the [RSA SSH key](/organizations-and-projects/how-to/create-ssh-key/#how-to-generate-a-rsa-ssh-key-pair)** that will give you access to your Instance template. If you do not have an RSA SSH key yet, click **Add RSA SSH key** and follow the steps.

          <Message type="tip">
            To activate the OpenSSH Server during Instance creation, add a `with-ssh` tag before launching the Instance.
          </Message>

    7. Click **Review** to see an order summary, including the estimated cost of your Instance based on the specifications you chose.
    8. Click **Create Instance template**.

        <Message type="important">
        An Instance template is immutable once created. You cannot edit a template's configuration afterward — create a new template if you need to change any parameter.
        </Message>

    Your Instance template is created and appears in the **Templates** list. You can now use it to deploy new Instances with a guaranteed, consistent configuration.
  </TabsTab>

</Tabs>

## Delete an Instance template

1. In the **Templates** tab, click <Icon name="more" /> > **Delete**.
2. Type **DELETE** and click **Delete Instance template**. The Instance template is deleted.

## Create an Instance using an Instance template

1. In the **Compute** section of the side menu, click **CPU & GPU Instances**. The [Instance dashboard](https://console.scaleway.com/instance/servers) opens.
2. In the **Templates** tab, next to the template you want to use, click <Icon name="more" /> > **Create Instance**. The Instance review page opens.
3. Review the properties of the Instance.
4. (Optional) Click <Icon name="edit"/> to override the properties of the template if needed, and click **Review**.
5. Click **Create Instance**. Your Instance begins provisioning, and you will be notified once it's ready.

