diff --git a/src/writer/spirv/builder.cc b/src/writer/spirv/builder.cc
index 8e68e83..193584c 100644
--- a/src/writer/spirv/builder.cc
+++ b/src/writer/spirv/builder.cc
@@ -1927,6 +1927,8 @@
     if (!GenerateTextureType(type->AsTexture(), result)) {
       return 0;
     }
+  } else if (type->IsSampler()) {
+    push_type(spv::Op::OpTypeSampler, {result});
   } else {
     error_ = "unable to convert type: " + type->type_name();
     return 0;
diff --git a/src/writer/spirv/builder_type_test.cc b/src/writer/spirv/builder_type_test.cc
index 769843f..48a5652 100644
--- a/src/writer/spirv/builder_type_test.cc
+++ b/src/writer/spirv/builder_type_test.cc
@@ -28,6 +28,7 @@
 #include "src/ast/type/matrix_type.h"
 #include "src/ast/type/pointer_type.h"
 #include "src/ast/type/sampled_texture_type.h"
+#include "src/ast/type/sampler_type.h"
 #include "src/ast/type/storage_texture_type.h"
 #include "src/ast/type/struct_type.h"
 #include "src/ast/type/texture_type.h"
@@ -1162,6 +1163,30 @@
                                          ast::type::ImageFormat::kR8Snorm,
                                          ast::type::ImageFormat::kR8Unorm));
 
+TEST_F(BuilderTest_Type, Sampler) {
+  ast::type::SamplerType sampler(ast::type::SamplerKind::kSampler);
+
+  ast::Module mod;
+  Builder b(&mod);
+  EXPECT_EQ(b.GenerateTypeIfNeeded(&sampler), 1u);
+  EXPECT_EQ(b.GenerateTypeIfNeeded(&sampler), 1u);
+  ASSERT_FALSE(b.has_error()) << b.error();
+
+  EXPECT_EQ(DumpInstructions(b.types()), "%1 = OpTypeSampler\n");
+}
+
+TEST_F(BuilderTest_Type, ComparisonSampler) {
+  ast::type::SamplerType sampler(ast::type::SamplerKind::kComparisonSampler);
+
+  ast::Module mod;
+  Builder b(&mod);
+  EXPECT_EQ(b.GenerateTypeIfNeeded(&sampler), 1u);
+  EXPECT_EQ(b.GenerateTypeIfNeeded(&sampler), 1u);
+  ASSERT_FALSE(b.has_error()) << b.error();
+
+  EXPECT_EQ(DumpInstructions(b.types()), "%1 = OpTypeSampler\n");
+}
+
 }  // namespace
 }  // namespace spirv
 }  // namespace writer
