# CSV Processor (Ingest pipelines): Tab Separator

**URL:** <https://discuss.elastic.co/t/csv-processor-ingest-pipelines-tab-separator/382361>\
**Category:** Elasticsearch\
**Created:** [October 1, 2025, 3:32pm UTC](https://discuss.elastic.co/t/csv-processor-ingest-pipelines-tab-separator/382361 "2025-10-01T15:32:55Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![erikg](https://avatars.discourse-cdn.com/v4/letter/e/91b2a8/32.png) [@erikg](https://discuss.elastic.co/u/erikg)\
**Post date:** [October 1, 2025, 3:32pm UTC](https://discuss.elastic.co/t/csv-processor-ingest-pipelines-tab-separator/382361/1 "2025-10-01T15:32:55Z")

</div>

Is there a way for CSV processor to accept TSV?

 ![image](https://us1.discourse-cdn.com/elastic/original/3X/6/a/6af812a2275caf3f4c11f84f9e70ca5ba3b57b3f.png)

---

<div class="post-metadata">

**Author:** ![Rios](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/rios/32/95745_2.png) [@Rios](https://discuss.elastic.co/u/Rios)\
**Post date:** [October 1, 2025, 3:39pm UTC](https://discuss.elastic.co/t/csv-processor-ingest-pipelines-tab-separator/382361/2 "2025-10-01T15:39:51Z")

</div>

Have you tried with the actual tab?

---

<div class="post-metadata">

**Author:** ![erikg](https://avatars.discourse-cdn.com/v4/letter/e/91b2a8/32.png) [@erikg](https://discuss.elastic.co/u/erikg)\
**Post date:** [October 1, 2025, 4:06pm UTC](https://discuss.elastic.co/t/csv-processor-ingest-pipelines-tab-separator/382361/3 "2025-10-01T16:06:13Z")

</div>

Yeah, I tried it with DevTools,

 ![image](https://us1.discourse-cdn.com/elastic/original/3X/5/e/5e6be18b6b1de6a059981ec434a3e2b08cf5af2c.png)

and it accepts it, but the processor doesn’t work!

Very strange!  
In the agent processor, it accepts the “\t” and it parses correctly

 ![image](https://us1.discourse-cdn.com/elastic/original/3X/b/7/b7cc1ade485f9750aa642d63af76f82a1ca2da46.png)

---

<div class="post-metadata">

**Author:** ![leandrojmp](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/leandrojmp/32/107231_2.png) [@leandrojmp](https://discuss.elastic.co/u/leandrojmp)\
**Post date:** [October 1, 2025, 4:45pm UTC](https://discuss.elastic.co/t/csv-processor-ingest-pipelines-tab-separator/382361/4 "2025-10-01T16:45:58Z")

</div>

The separator needs to be a single character string, you can't use `\t` in the configuration as this would correspond to 2 characters.

Try to us a literal tab, like type a single tab on a text editor like notepad and copy this, then paste on the processor.

You will be able to save and looking at the json you will see that it was replaced by `\t`.

But I'm not sure this will work, you will need to test it.

---

<div class="post-metadata">

**Author:** ![Rios](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/rios/32/95745_2.png) [@Rios](https://discuss.elastic.co/u/Rios)\
**Post date:** [October 1, 2025, 8:23pm UTC](https://discuss.elastic.co/t/csv-processor-ingest-pipelines-tab-separator/382361/5 "2025-10-01T20:23:43Z")

</div>

As I said, as well as Leandro more clearly said, In Kibana CSV ingest pipeline you should use the literal tab. Copy from Notepad/an editor or your file .

```auto
PUT _ingest/pipeline/CSV Test
{
  "processors": [
    {
      "csv": {
        "field": "message",
        "target_fields": [
          "Index",
          "Customer Id",
          "First Name",
          "Last Name",
          "Company",
          "City",
          "Country",
          "Phone 1",
          "Phone 2",
          "Email",
          "Subscription Date",
          "Website"
        ],
        "separator": "\t"
      }
    }
  ]
}

```

```auto
[
  {
    "_source": {
      "message": "1\td1014d010c7ab0c\tAndrew\tGlodman\tRIOS Mars LTD\tAccra\tGhana\t111-222-4623x3335\t(422)787-2331x71127\tmaaddress@gdomain.info\t2021-07-20\thttp://www.domainx.biz/"
    }
  }
]

```

Output:

```auto
{
  "docs": [
    {
      "doc": {
        "_index": "_index",
        "_version": "-3",
        "_id": "_id",
        "_source": {
          "Company": "RIOS Mars LTD",
          "Email": "maaddress@gdomain.info",
          "Phone 1": "111-222-4623x3335",
          "First Name": "Andrew",
          "Website": "http://www.domainx.biz/",
          "Index": "1",
          "City": "Accra",
          "message": "1\tdE014d010c7ab0c\tAndrew\tGlodman\tRIOS Mars LTD\tAccra\tGhanaM\t111-222-4623x3335\t(422)787-2331x71127\tmaaddress@gdomain.info\t2021-07-20\thttp://www.domainx.biz/",
          "Subscription Date": "2021-07-20",
          "Customer Id": "dE014d010c7ab0c",
          "Country": "Ghana",
          "Phone 2": "(422)787-2331x71127",
          "Last Name": "Glodman"
        },
        "_ingest": {
          "timestamp": "2025-10-01T20:22:43.406634532Z"
        }
      }
    }
  ]
}

```
