diff --git a/packages/localize/src/tools/src/extract/translation_files/xliff1_translation_serializer.ts b/packages/localize/src/tools/src/extract/translation_files/xliff1_translation_serializer.ts
index c44f8f9d21315..d84823454a6ed 100644
--- a/packages/localize/src/tools/src/extract/translation_files/xliff1_translation_serializer.ts
+++ b/packages/localize/src/tools/src/extract/translation_files/xliff1_translation_serializer.ts
@@ -54,7 +54,7 @@ export class Xliff1TranslationSerializer implements TranslationSerializer {
ids.add(id);
xml.startTag('trans-unit', {id, datatype: 'html'});
- xml.startTag('source', {}, {preserveWhitespace: true});
+ xml.startTag('source', {'xml:space': 'preserve'}, {preserveWhitespace: true});
this.serializeMessage(xml, message);
xml.endTag('source', {preserveWhitespace: false});
if (message.location) {
diff --git a/packages/localize/src/tools/src/extract/translation_files/xliff2_translation_serializer.ts b/packages/localize/src/tools/src/extract/translation_files/xliff2_translation_serializer.ts
index 4dd7e4f4a2824..2351b2d4f82b1 100644
--- a/packages/localize/src/tools/src/extract/translation_files/xliff2_translation_serializer.ts
+++ b/packages/localize/src/tools/src/extract/translation_files/xliff2_translation_serializer.ts
@@ -70,7 +70,7 @@ export class Xliff2TranslationSerializer implements TranslationSerializer {
xml.endTag('notes');
}
xml.startTag('segment');
- xml.startTag('source', {}, {preserveWhitespace: true});
+ xml.startTag('source', {'xml:space': 'preserve'}, {preserveWhitespace: true});
this.serializeMessage(xml, message);
xml.endTag('source', {preserveWhitespace: false});
xml.endTag('segment');
diff --git a/packages/localize/src/tools/test/extract/translation_files/xliff1_translation_serializer_spec.ts b/packages/localize/src/tools/test/extract/translation_files/xliff1_translation_serializer_spec.ts
index f421850a3270e..55ee27f6e8cf2 100644
--- a/packages/localize/src/tools/test/extract/translation_files/xliff1_translation_serializer_spec.ts
+++ b/packages/localize/src/tools/test/extract/translation_files/xliff1_translation_serializer_spec.ts
@@ -77,7 +77,7 @@ runInEachFileSystem(() => {
` `,
- ` `,
+ ` `,
` `,
` file.ts`,
` 6`,
@@ -85,32 +85,32 @@ runInEachFileSystem(() => {
` some meaning`,
` `,
` `,
- ` `,
+ ` `,
` `,
` `,
- ` `,
+ ` `,
` some description`,
` `,
` `,
- ` `,
+ ` `,
` `,
` `,
- ` `,
+ ` `,
` and description`,
` meaning`,
` `,
` `,
- ` `,
` `,
- ` <escapeme>`,
+ ` <escapeme>`,
` `,
` `,
- ` pre-ICU {VAR_SELECT, select, a {a} b {} c {pre post}} post-ICU`,
+ ` pre-ICU {VAR_SELECT, select, a {a} b {} c {pre post}} post-ICU`,
` `,
` `,
- ` {VAR_PLURAL, plural, one {something bold} other {pre middle post}}`,
+ ` {VAR_PLURAL, plural, one {something bold} other {pre middle post}}`,
` `,
`