diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 3577f02..8d8721d 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -644,7 +644,7 @@
             --env CC=/usr/bin/gcc-9 \
             --env CXX=/usr/bin/g++-9 \
             --env CMAKE_BUILD_TYPE=Release \
-            --env "IREE_TARGET_BACKEND_WEBGPU=OFF" \
+            --env "IREE_TARGET_BACKEND_WEBGPU_SPIRV=OFF" \
             --env "IREE_CCACHE_GCP_TOKEN=$(gcloud auth application-default print-access-token)" \
             --env "IREE_WRITE_REMOTE_CCACHE=${IREE_WRITE_REMOTE_CCACHE}" \
             --env "CCACHE_NAMESPACE=gcr.io/iree-oss/base@sha256:61e9aae211007dbad95e1f429e9e5121fd5968c204791038424979c21146cf75" \
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 62e78e0..d5551b3 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -385,7 +385,7 @@
 # Non-default target backends either have additional dependencies or are
 # experimental/niche in some fashion.
 # Disable WebGPU by default - it has complex deps and is under development.
-cmake_dependent_option(IREE_TARGET_BACKEND_WEBGPU "Enables the 'webgpu' compiler target backend" OFF ${IREE_BUILD_COMPILER} OFF)
+cmake_dependent_option(IREE_TARGET_BACKEND_WEBGPU_SPIRV "Enables the 'webgpu' compiler target backend" OFF ${IREE_BUILD_COMPILER} OFF)
 
 #-------------------------------------------------------------------------------
 # Compiler Input Dialects
diff --git a/build_tools/cmake/build_all.sh b/build_tools/cmake/build_all.sh
index 28e9169..80cd883 100755
--- a/build_tools/cmake/build_all.sh
+++ b/build_tools/cmake/build_all.sh
@@ -22,7 +22,7 @@
 # Enable WebGPU compiler builds and tests by default. All deps get fetched as
 # needed, but some of the deps are too large to enable by default for all
 # developers.
-IREE_TARGET_BACKEND_WEBGPU="${IREE_TARGET_BACKEND_WEBGPU:-ON}"
+IREE_TARGET_BACKEND_WEBGPU_SPIRV="${IREE_TARGET_BACKEND_WEBGPU_SPIRV:-ON}"
 
 source build_tools/cmake/setup_build.sh
 source build_tools/cmake/setup_ccache.sh
@@ -50,7 +50,7 @@
   "-DPython3_EXECUTABLE=${IREE_PYTHON3_EXECUTABLE}"
   "-DPYTHON_EXECUTABLE=${IREE_PYTHON3_EXECUTABLE}"
 
-  "-DIREE_TARGET_BACKEND_WEBGPU=${IREE_TARGET_BACKEND_WEBGPU}"
+  "-DIREE_TARGET_BACKEND_WEBGPU_SPIRV=${IREE_TARGET_BACKEND_WEBGPU_SPIRV}"
 )
 
 "$CMAKE_BIN" "${CMAKE_ARGS[@]}"
diff --git a/build_tools/cmake/build_host_tools.sh b/build_tools/cmake/build_host_tools.sh
index 810789f..49e29d8 100755
--- a/build_tools/cmake/build_host_tools.sh
+++ b/build_tools/cmake/build_host_tools.sh
@@ -39,7 +39,7 @@
 
   # Enable the WebGPU compiler build. All deps get fetched as needed, but some
   # of the deps are too large to enable by default for all developers.
-  "-DIREE_TARGET_BACKEND_WEBGPU=ON"
+  "-DIREE_TARGET_BACKEND_WEBGPU_SPIRV=ON"
 )
 
 "${CMAKE_BIN}" "${CMAKE_ARGS[@]}"
diff --git a/build_tools/cmake/iree_llvm.cmake b/build_tools/cmake/iree_llvm.cmake
index 03905e6..ce0217d 100644
--- a/build_tools/cmake/iree_llvm.cmake
+++ b/build_tools/cmake/iree_llvm.cmake
@@ -192,8 +192,8 @@
   if(IREE_TARGET_BACKEND_VMVX)
     message(STATUS "  - vmvx")
   endif()
-  if(IREE_TARGET_BACKEND_WEBGPU)
-    message(STATUS "  - webgpu")
+  if(IREE_TARGET_BACKEND_WEBGPU_SPIRV)
+    message(STATUS "  - webgpu-spirv")
   endif()
 
   if(IREE_CLANG_TARGET)
diff --git a/build_tools/cmake/presets/options.json b/build_tools/cmake/presets/options.json
index 3565369..a1aebd8 100644
--- a/build_tools/cmake/presets/options.json
+++ b/build_tools/cmake/presets/options.json
@@ -1,149 +1,149 @@
 {
-    "version": 4,
-    "cmakeMinimumRequired": {
-      "major": 3,
-      "minor": 23,
-      "patch": 0
-    },
-    "include": [
-        "new.json"
-    ],
-    "configurePresets": [
-        {
-            "name": "minimal",
-            "displayName": "Minimal config",
-            "description": "Project configured with minimal features enabled",
-            "cacheVariables": {
-                "IREE_DEFAULT_CPU_LLVM_TARGETS": {
-                    "type": "STRING",
-                    "value": "host"
-                },
-                "IREE_BUILD_SAMPLES": {
-                    "type": "BOOL",
-                    "value": "OFF"
-                },
-                "IREE_BUILD_PYTHON_BINDINGS": {
-                    "type": "BOOL",
-                    "value": "OFF"
-                },
-                "IREE_BUILD_BINDINGS_TFLITE": {
-                    "type": "BOOL",
-                    "value": "OFF"
-                },
-                "IREE_EXTERNAL_HAL_DRIVERS": {
-                    "type": "STRING",
-                    "value": ""
-                },
-                "IREE_HAL_DRIVER_DEFAULTS": {
-                    "type": "BOOL",
-                    "value": "OFF"
-                },
-                "IREE_HAL_DRIVER_CUDA": {
-                    "type": "BOOL",
-                    "value": "OFF"
-                },
-                "IREE_HAL_DRIVER_LOCAL_SYNC": {
-                    "type": "BOOL",
-                    "value": "OFF"
-                },
-                "IREE_HAL_DRIVER_VULKAN": {
-                    "type": "BOOL",
-                    "value": "OFF"
-                },
-                "IREE_HAL_DRIVER_METAL": {
-                    "type": "BOOL",
-                    "value": "OFF"
-                },
-                "IREE_TARGET_BACKEND_DEFAULTS": {
-                    "type": "BOOL",
-                    "value": "OFF"
-                },
-                "IREE_TARGET_BACKEND_LLVM_CPU": {
-                    "type": "BOOL",
-                    "value": "OFF"
-                },
-                "IREE_TARGET_BACKEND_LLVM_CPU_WASM": {
-                    "type": "BOOL",
-                    "value": "OFF"
-                },
-                "IREE_TARGET_BACKEND_ROCM": {
-                    "type": "BOOL",
-                    "value": "OFF"
-                },
-                "IREE_TARGET_BACKEND_METAL_SPIRV": {
-                    "type": "BOOL",
-                    "value": "OFF"
-                },
-                "IREE_TARGET_BACKEND_VULKAN_SPIRV": {
-                    "type": "BOOL",
-                    "value": "OFF"
-                },
-                "IREE_TARGET_BACKEND_CUDA": {
-                    "type": "BOOL",
-                    "value": "OFF"
-                },
-                "IREE_TARGET_BACKEND_WEBGPU": {
-                    "type": "BOOL",
-                    "value": "OFF"
-                },
-                "IREE_INPUT_STABLEHLO": {
-                    "type": "BOOL",
-                    "value": "OFF"
-                },
-                "IREE_INPUT_TORCH": {
-                    "type": "BOOL",
-                    "value": "OFF"
-                },
-                "IREE_INPUT_TOSA": {
-                    "type": "BOOL",
-                    "value": "OFF"
-                },
-                "IREE_OUTPUT_FORMAT_C": {
-                    "type": "BOOL",
-                    "value": "OFF"
-                }
-            }
+  "version": 4,
+  "cmakeMinimumRequired": {
+    "major": 3,
+    "minor": 23,
+    "patch": 0
+  },
+  "include": [
+    "new.json"
+  ],
+  "configurePresets": [
+    {
+      "name": "minimal",
+      "displayName": "Minimal config",
+      "description": "Project configured with minimal features enabled",
+      "cacheVariables": {
+        "IREE_DEFAULT_CPU_LLVM_TARGETS": {
+          "type": "STRING",
+          "value": "host"
         },
-        {
-            "name": "python-bindings",
-            "displayName": "Python Development",
-            "cacheVariables": {
-                "IREE_BUILD_PYTHON_BINDINGS": {
-                    "type": "BOOL",
-                    "value": "OFF"
-                },
-                "Python3_FIND_VIRTUALENV": {
-                    "type": "STRING",
-                    "value": "ONLY"
-                }
-            }
+        "IREE_BUILD_SAMPLES": {
+          "type": "BOOL",
+          "value": "OFF"
         },
-        {
-            "name": "new-linux-minimal",
-            "displayName": "(START HERE) Set Up New Minimal Dev Config",
-            "description": "Project configured with minimal features enabled",
-            "inherits": [
-                "new-linux-dev",
-                "minimal"
-            ]
+        "IREE_BUILD_PYTHON_BINDINGS": {
+          "type": "BOOL",
+          "value": "OFF"
         },
-        {
-            "name": "new-macos-minimal",
-            "displayName": "(START HERE) Set Up New Minimal Dev Config",
-            "description": "Project configured with minimal features enabled",
-            "inherits": [
-                "new-macos-dev",
-                "minimal"
-            ]
+        "IREE_BUILD_BINDINGS_TFLITE": {
+          "type": "BOOL",
+          "value": "OFF"
         },
-        {
-            "name": "new-windows-minimal",
-            "displayName": "(START HERE) Set Up New Minimal Dev Config",
-            "description": "Project configured with minimal features enabled",
-            "inherits": [
-                "new-windows-dev",
-                "minimal"
-            ]
+        "IREE_EXTERNAL_HAL_DRIVERS": {
+          "type": "STRING",
+          "value": ""
+        },
+        "IREE_HAL_DRIVER_DEFAULTS": {
+          "type": "BOOL",
+          "value": "OFF"
+        },
+        "IREE_HAL_DRIVER_CUDA": {
+          "type": "BOOL",
+          "value": "OFF"
+        },
+        "IREE_HAL_DRIVER_LOCAL_SYNC": {
+          "type": "BOOL",
+          "value": "OFF"
+        },
+        "IREE_HAL_DRIVER_VULKAN": {
+          "type": "BOOL",
+          "value": "OFF"
+        },
+        "IREE_HAL_DRIVER_METAL": {
+          "type": "BOOL",
+          "value": "OFF"
+        },
+        "IREE_TARGET_BACKEND_DEFAULTS": {
+          "type": "BOOL",
+          "value": "OFF"
+        },
+        "IREE_TARGET_BACKEND_LLVM_CPU": {
+          "type": "BOOL",
+          "value": "OFF"
+        },
+        "IREE_TARGET_BACKEND_LLVM_CPU_WASM": {
+          "type": "BOOL",
+          "value": "OFF"
+        },
+        "IREE_TARGET_BACKEND_ROCM": {
+          "type": "BOOL",
+          "value": "OFF"
+        },
+        "IREE_TARGET_BACKEND_METAL_SPIRV": {
+          "type": "BOOL",
+          "value": "OFF"
+        },
+        "IREE_TARGET_BACKEND_VULKAN_SPIRV": {
+          "type": "BOOL",
+          "value": "OFF"
+        },
+        "IREE_TARGET_BACKEND_CUDA": {
+          "type": "BOOL",
+          "value": "OFF"
+        },
+        "IREE_TARGET_BACKEND_WEBGPU_SPIRV": {
+          "type": "BOOL",
+          "value": "OFF"
+        },
+        "IREE_INPUT_STABLEHLO": {
+          "type": "BOOL",
+          "value": "OFF"
+        },
+        "IREE_INPUT_TORCH": {
+          "type": "BOOL",
+          "value": "OFF"
+        },
+        "IREE_INPUT_TOSA": {
+          "type": "BOOL",
+          "value": "OFF"
+        },
+        "IREE_OUTPUT_FORMAT_C": {
+          "type": "BOOL",
+          "value": "OFF"
         }
-    ]
+      }
+    },
+    {
+      "name": "python-bindings",
+      "displayName": "Python Development",
+      "cacheVariables": {
+        "IREE_BUILD_PYTHON_BINDINGS": {
+          "type": "BOOL",
+          "value": "OFF"
+        },
+        "Python3_FIND_VIRTUALENV": {
+          "type": "STRING",
+          "value": "ONLY"
+        }
+      }
+    },
+    {
+      "name": "new-linux-minimal",
+      "displayName": "(START HERE) Set Up New Minimal Dev Config",
+      "description": "Project configured with minimal features enabled",
+      "inherits": [
+        "new-linux-dev",
+        "minimal"
+      ]
+    },
+    {
+      "name": "new-macos-minimal",
+      "displayName": "(START HERE) Set Up New Minimal Dev Config",
+      "description": "Project configured with minimal features enabled",
+      "inherits": [
+        "new-macos-dev",
+        "minimal"
+      ]
+    },
+    {
+      "name": "new-windows-minimal",
+      "displayName": "(START HERE) Set Up New Minimal Dev Config",
+      "description": "Project configured with minimal features enabled",
+      "inherits": [
+        "new-windows-dev",
+        "minimal"
+      ]
+    }
+  ]
 }
diff --git a/compiler/plugins/iree_compiler_plugin.cmake b/compiler/plugins/iree_compiler_plugin.cmake
index a483920..8430870 100644
--- a/compiler/plugins/iree_compiler_plugin.cmake
+++ b/compiler/plugins/iree_compiler_plugin.cmake
@@ -32,6 +32,6 @@
   add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/target/VMVX target/VMVX)
 endif()
 
-if(IREE_TARGET_BACKEND_WEBGPU)
-  add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/target/WebGPU target/WebGPU)
+if(IREE_TARGET_BACKEND_WEBGPU_SPIRV)
+  add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/target/WebGPUSPIRV target/WebGPUSPIRV)
 endif()
diff --git a/compiler/plugins/target/WebGPU/CMakeLists.txt b/compiler/plugins/target/WebGPUSPIRV/CMakeLists.txt
similarity index 94%
rename from compiler/plugins/target/WebGPU/CMakeLists.txt
rename to compiler/plugins/target/WebGPUSPIRV/CMakeLists.txt
index 62233d6..9831fb6 100644
--- a/compiler/plugins/target/WebGPU/CMakeLists.txt
+++ b/compiler/plugins/target/WebGPUSPIRV/CMakeLists.txt
@@ -26,19 +26,19 @@
 
 iree_compiler_register_plugin(
   PLUGIN_ID
-    hal_target_webgpu
+    hal_target_webgpu_spirv
   TARGET
-    ::WebGPU
+    ::WebGPUSPIRV
 )
 
 iree_cc_library(
   NAME
-    WebGPU
+    WebGPUSPIRV
   HDRS
     "SPIRVToWGSL.h"
   SRCS
     "SPIRVToWGSL.cpp"
-    "WebGPUTarget.cpp"
+    "WebGPUSPIRVTarget.cpp"
   DEPS
     LLVMSupport
     MLIRGPUDialect
diff --git a/compiler/plugins/target/WebGPU/SPIRVToWGSL.cpp b/compiler/plugins/target/WebGPUSPIRV/SPIRVToWGSL.cpp
similarity index 100%
rename from compiler/plugins/target/WebGPU/SPIRVToWGSL.cpp
rename to compiler/plugins/target/WebGPUSPIRV/SPIRVToWGSL.cpp
diff --git a/compiler/plugins/target/WebGPU/SPIRVToWGSL.h b/compiler/plugins/target/WebGPUSPIRV/SPIRVToWGSL.h
similarity index 74%
rename from compiler/plugins/target/WebGPU/SPIRVToWGSL.h
rename to compiler/plugins/target/WebGPUSPIRV/SPIRVToWGSL.h
index c99cf8b..1cc0b2c 100644
--- a/compiler/plugins/target/WebGPU/SPIRVToWGSL.h
+++ b/compiler/plugins/target/WebGPUSPIRV/SPIRVToWGSL.h
@@ -4,8 +4,8 @@
 // See https://llvm.org/LICENSE.txt for license information.
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
-#ifndef IREE_COMPILER_PLUGINS_TARGET_WEBGPU_SPIRVTOWGSL_H_
-#define IREE_COMPILER_PLUGINS_TARGET_WEBGPU_SPIRVTOWGSL_H_
+#ifndef IREE_COMPILER_PLUGINS_TARGET_WEBGPUSPIRV_SPIRVTOWGSL_H_
+#define IREE_COMPILER_PLUGINS_TARGET_WEBGPUSPIRV_SPIRVTOWGSL_H_
 
 #include <optional>
 #include <string>
@@ -21,4 +21,4 @@
 
 } // namespace mlir::iree_compiler::IREE::HAL
 
-#endif // IREE_COMPILER_PLUGINS_TARGET_WEBGPU_SPIRVTOWGSL_H_
+#endif // IREE_COMPILER_PLUGINS_TARGET_WEBGPUSPIRV_SPIRVTOWGSL_H_
diff --git a/compiler/plugins/target/WebGPU/WebGPUTarget.cpp b/compiler/plugins/target/WebGPUSPIRV/WebGPUSPIRVTarget.cpp
similarity index 93%
rename from compiler/plugins/target/WebGPU/WebGPUTarget.cpp
rename to compiler/plugins/target/WebGPUSPIRV/WebGPUSPIRVTarget.cpp
index 6fd63fa..1f57ad5 100644
--- a/compiler/plugins/target/WebGPU/WebGPUTarget.cpp
+++ b/compiler/plugins/target/WebGPUSPIRV/WebGPUSPIRVTarget.cpp
@@ -30,7 +30,7 @@
 
 namespace {
 
-struct WebGPUOptions {
+struct WebGPUSPIRVOptions {
   bool debugSymbols = true;
 
   void bindOptions(OptionsBinder &binder) {
@@ -54,9 +54,10 @@
       spirv::DeviceType::Unknown, spirv::TargetEnvAttr::kUnknownDeviceID);
 }
 
-class WebGPUTargetBackend : public TargetBackend {
+class WebGPUSPIRVTargetBackend : public TargetBackend {
 public:
-  WebGPUTargetBackend(const WebGPUOptions &options) : options(options) {}
+  WebGPUSPIRVTargetBackend(const WebGPUSPIRVOptions &options)
+      : options(options) {}
 
   // NOTE: we could vary this based on the options such as 'webgpu-v2'.
   std::string name() const override { return "webgpu"; }
@@ -274,24 +275,24 @@
 
     auto configAttr = b.getDictionaryAttr(configItems);
     return IREE::HAL::ExecutableTargetAttr::get(
-        context, b.getStringAttr("webgpu"), b.getStringAttr("webgpu-wgsl-fb"),
-        configAttr);
+        context, b.getStringAttr("webgpu-spirv"),
+        b.getStringAttr("webgpu-wgsl-fb"), configAttr);
   }
 
-  const WebGPUOptions &options;
+  const WebGPUSPIRVOptions &options;
 };
 
-struct WebGPUSession
-    : public PluginSession<WebGPUSession, WebGPUOptions,
+struct WebGPUSPIRVSession
+    : public PluginSession<WebGPUSPIRVSession, WebGPUSPIRVOptions,
                            PluginActivationPolicy::DefaultActivated> {
   void populateHALTargetBackends(IREE::HAL::TargetBackendList &targets) {
     auto backendFactory = [=]() {
-      return std::make_shared<WebGPUTargetBackend>(options);
+      return std::make_shared<WebGPUSPIRVTargetBackend>(options);
     };
     // #hal.device.target<"webgpu", ...
     targets.add("webgpu", backendFactory);
-    // #hal.executable.target<"webgpu-wgsl", ...
-    targets.add("webgpu-wgsl", backendFactory);
+    // #hal.executable.target<"webgpu-spirv", ...
+    targets.add("webgpu-spirv", backendFactory);
   }
 };
 
@@ -300,11 +301,11 @@
 } // namespace mlir::iree_compiler::IREE::HAL
 
 IREE_DEFINE_COMPILER_OPTION_FLAGS(
-    mlir::iree_compiler::IREE::HAL::WebGPUOptions);
+    mlir::iree_compiler::IREE::HAL::WebGPUSPIRVOptions);
 
-extern "C" bool iree_register_compiler_plugin_hal_target_webgpu(
+extern "C" bool iree_register_compiler_plugin_hal_target_webgpu_spirv(
     mlir::iree_compiler::PluginRegistrar *registrar) {
-  registrar->registerPlugin<mlir::iree_compiler::IREE::HAL::WebGPUSession>(
-      "hal_target_webgpu");
+  registrar->registerPlugin<mlir::iree_compiler::IREE::HAL::WebGPUSPIRVSession>(
+      "hal_target_webgpu_spirv");
   return true;
 }
diff --git a/compiler/plugins/target/WebGPU/spirv-headers/CMakeLists.txt b/compiler/plugins/target/WebGPUSPIRV/spirv-headers/CMakeLists.txt
similarity index 100%
rename from compiler/plugins/target/WebGPU/spirv-headers/CMakeLists.txt
rename to compiler/plugins/target/WebGPUSPIRV/spirv-headers/CMakeLists.txt
diff --git a/compiler/plugins/target/WebGPU/spirv-tools/CMakeLists.txt b/compiler/plugins/target/WebGPUSPIRV/spirv-tools/CMakeLists.txt
similarity index 100%
rename from compiler/plugins/target/WebGPU/spirv-tools/CMakeLists.txt
rename to compiler/plugins/target/WebGPUSPIRV/spirv-tools/CMakeLists.txt
diff --git a/compiler/plugins/target/WebGPU/test/CMakeLists.txt b/compiler/plugins/target/WebGPUSPIRV/test/CMakeLists.txt
similarity index 100%
rename from compiler/plugins/target/WebGPU/test/CMakeLists.txt
rename to compiler/plugins/target/WebGPUSPIRV/test/CMakeLists.txt
diff --git a/compiler/plugins/target/WebGPU/test/smoketest.mlir b/compiler/plugins/target/WebGPUSPIRV/test/smoketest.mlir
similarity index 96%
rename from compiler/plugins/target/WebGPU/test/smoketest.mlir
rename to compiler/plugins/target/WebGPUSPIRV/test/smoketest.mlir
index 888b497..3613d79 100644
--- a/compiler/plugins/target/WebGPU/test/smoketest.mlir
+++ b/compiler/plugins/target/WebGPUSPIRV/test/smoketest.mlir
@@ -5,7 +5,7 @@
   hal.device.targets = [
     #hal.device.target<"webgpu", {
       executable_targets = [
-        #hal.executable.target<"webgpu-wgsl", "webgpu-wgsl-fb", {
+        #hal.executable.target<"webgpu-spirv", "webgpu-wgsl-fb", {
           spirv.target_env = #spirv.target_env<#spirv.vce<v1.0, [Shader], [SPV_KHR_storage_buffer_storage_class]>, #spirv.resource_limits<>>
         }>
       ]
diff --git a/compiler/plugins/target/WebGPU/tint/CMakeLists.txt b/compiler/plugins/target/WebGPUSPIRV/tint/CMakeLists.txt
similarity index 100%
rename from compiler/plugins/target/WebGPU/tint/CMakeLists.txt
rename to compiler/plugins/target/WebGPUSPIRV/tint/CMakeLists.txt
diff --git a/compiler/setup.py b/compiler/setup.py
index 85b99f3..9d99e9a 100644
--- a/compiler/setup.py
+++ b/compiler/setup.py
@@ -258,7 +258,7 @@
             "-DCMAKE_PLATFORM_NO_VERSIONED_SONAME=ON",
             "-DPython3_EXECUTABLE={}".format(sys.executable),
             "-DCMAKE_BUILD_TYPE={}".format(cfg),
-            # TODO(scotttodd): include IREE_TARGET_BACKEND_WEBGPU here (and in env)
+            # TODO(scotttodd): include IREE_TARGET_BACKEND_WEBGPU_SPIRV here (and in env)
             get_env_cmake_option("IREE_ENABLE_CPUINFO", "ON"),
             get_env_cmake_option("IREE_TARGET_BACKEND_ROCM", "ON"),
             get_env_cmake_option("IREE_ENABLE_LLD", "OFF"),
diff --git a/docs/website/docs/guides/deployment-configurations/index.md b/docs/website/docs/guides/deployment-configurations/index.md
index e7c628d..6499b36 100644
--- a/docs/website/docs/guides/deployment-configurations/index.md
+++ b/docs/website/docs/guides/deployment-configurations/index.md
@@ -41,11 +41,11 @@
 | -------------- | ----------- | ---------------------- |
 | `llvm-cpu` | Code generation for CPU-like devices supported by LLVM | `local-sync`, `local-task` |
 | `vmvx` | Portable interpreter powered by a microkernel library | `local-sync`, `local-task` |
-| `vulkan` or<br>`vulkan-spirv` | Portable GPU support via SPIR-V for Vulkan | `vulkan` |
+| `vulkan-spirv` | Portable GPU support via SPIR-V for Vulkan | `vulkan` |
 | `cuda` | NVIDIA GPU support via PTX for CUDA | `cuda` |
-| `metal` or<br>`metal-spirv` | GPU support on Apple platforms via MSL for Metal | `metal` |
+| `metal-spirv` | GPU support on Apple platforms via MSL for Metal | `metal` |
 | `rocm` | **Experimental** <br> AMD GPU support via HSACO for ROCm | `rocm` |
-| `webgpu-wgsl` | **Experimental** <br> GPU support on the Web via WGSL for WebGPU | `webgpu` |
+| `webgpu-spirv` | **Experimental** <br> GPU support on the Web via WGSL for WebGPU | `webgpu` |
 
 !!! tip "Tip - listing available backends"
     The list of compiler target backends can be queried:
diff --git a/experimental/webgpu/cts/CMakeLists.txt b/experimental/webgpu/cts/CMakeLists.txt
index 0e3a583..aab43ee 100644
--- a/experimental/webgpu/cts/CMakeLists.txt
+++ b/experimental/webgpu/cts/CMakeLists.txt
@@ -12,7 +12,7 @@
   DRIVER_REGISTRATION_FN
     "iree_hal_webgpu_driver_module_register"
   COMPILER_TARGET_BACKEND
-    "webgpu"
+    "webgpu-spirv"
   EXECUTABLE_FORMAT
     "\"webgpu-wgsl-fb\""
   DEPS
diff --git a/tests/e2e/stablehlo_ops/CMakeLists.txt b/tests/e2e/stablehlo_ops/CMakeLists.txt
index 65cb226..892658b 100644
--- a/tests/e2e/stablehlo_ops/CMakeLists.txt
+++ b/tests/e2e/stablehlo_ops/CMakeLists.txt
@@ -532,7 +532,7 @@
     "transpose.mlir"
     # "while.mlir"  # TODO(#12509): WebGPU SPIR-V broken
   TARGET_BACKEND
-    "webgpu"
+    "webgpu-spirv"
   # Only test compilation for now, the WebGPU driver is not stable/tested yet.
   # DRIVER
   #   "webgpu"
diff --git a/tests/e2e/tosa_ops/CMakeLists.txt b/tests/e2e/tosa_ops/CMakeLists.txt
index f3578a5..654ea95 100644
--- a/tests/e2e/tosa_ops/CMakeLists.txt
+++ b/tests/e2e/tosa_ops/CMakeLists.txt
@@ -391,7 +391,7 @@
     "transpose.mlir"
     # "while.mlir"  # TODO(#12509): WebGPU SPIR-V broken
   TARGET_BACKEND
-    "webgpu"
+    "webgpu-spirv"
   # Only test compilation for now, the WebGPU driver is not stable/tested yet.
   # DRIVER
   #   "webgpu"
