diff --git a/docs/language.md b/docs/language.md
index 1ef533e..629125e 100644
--- a/docs/language.md
+++ b/docs/language.md
@@ -63,8 +63,7 @@
 ### Strings
 
 Strings are enclosed in double-quotes and use backslash as the escape
-character. They can span multiple lines. The only escape sequences supported
-are:
+character. The only escape sequences supported are:
 
   * `\"` (for literal quote)
   * `\$` (for literal dollars sign)
diff --git a/src/gn/tokenizer.cc b/src/gn/tokenizer.cc
index 52e1c75..aeeb8b0 100644
--- a/src/gn/tokenizer.cc
+++ b/src/gn/tokenizer.cc
@@ -287,6 +287,22 @@
         if (IsCurrentStringTerminator(initial)) {
           Advance();  // Skip past last "
           break;
+        } else if (IsCurrentNewline()) {
+          // We don't support newlines in string literals. This is a deliberate
+          // choice to avoid a class of bugs and confusing error messages that
+          // can arise from accidentally unclosed string literals. For example,
+          // a missing quote could cause the lexer to consume subsequent lines
+          // as part of the string, leading to a perplexing error message far
+          // from the actual mistake.
+          //
+          // While supporting multi-line strings could be convenient (e.g., for
+          // asserts), its utility is limited without features like leading
+          // whitespace trimming. The consensus is that the potential for
+          // hard-to-debug errors outweighs the benefits of this feature in its
+          // current simple form. For more context, see the discussion in
+          // https://gn-review.git.corp.google.com/c/gn/+/19361/comments/f029b489_c14ec6de.
+          *err_ = Err(LocationRange(location, GetCurrentLocation()),
+                      "Newline in string constant.");
         }
         Advance();
       }
diff --git a/src/gn/tokenizer_unittest.cc b/src/gn/tokenizer_unittest.cc
index 5decc68..dfec895 100644
--- a/src/gn/tokenizer_unittest.cc
+++ b/src/gn/tokenizer_unittest.cc
@@ -70,14 +70,11 @@
 }
 
 TEST(Tokenizer, String) {
-  TokenExpectation strings[] = {
-      {Token::STRING, "\"foo\""},
-      {Token::STRING, "\"bar\\\"baz\""},
-      {Token::STRING, "\"asdf\\\\\""},
-      {Token::STRING, "\"new\nline\""},
-  };
-  EXPECT_TRUE(CheckTokenizer(
-      "  \"foo\" \"bar\\\"baz\" \"asdf\\\\\" \"new\nline\"", strings));
+  TokenExpectation strings[] = {{Token::STRING, "\"foo\""},
+                                {Token::STRING, "\"bar\\\"baz\""},
+                                {Token::STRING, "\"asdf\\\\\""}};
+  EXPECT_TRUE(
+      CheckTokenizer("  \"foo\" \"bar\\\"baz\" \"asdf\\\\\" ", strings));
 }
 
 TEST(Tokenizer, Operator) {
