diff --git a/src/Plugin/Field/FieldFormatter/CSVFileFormatter.php b/src/Plugin/Field/FieldFormatter/CSVFileFormatter.php
index 17c6d31caa43023f390c3b562ed334fc91c5d04f..db62f5027952860c5870f7e0fa13bbf5a9e24238 100644
--- a/src/Plugin/Field/FieldFormatter/CSVFileFormatter.php
+++ b/src/Plugin/Field/FieldFormatter/CSVFileFormatter.php
@@ -388,6 +388,8 @@ class CSVFileFormatter extends FileFormatterBase {
 
     $header = $settings['csvfile_formatter_has_header'];
     $separator = empty($settings['csvfile_formatter_separator']) ? ',' : $settings['csvfile_formatter_separator'];
+    // Handle tab-separated files using \t as a separator in formatter config.
+    if ($settings['csvfile_formatter_separator'] == '\t') $separator = "\t";
     $enclosure = empty($settings['csvfile_formatter_enclosure']) ? '"' : $settings['csvfile_formatter_enclosure'];
     $escape = empty($settings['csvfile_formatter_escape']) ? '\\' : $settings['csvfile_formatter_escape'];
     $row_classes = '';