﻿---
title: Convert processor
description: The Convert processor converts a field to a different data type. For example, you could convert a string to an integer. To convert a field to a different...
url: https://docs-v3-preview.elastic.dev/elastic/docs-content/pull/5664/solutions/observability/streams/management/extract/convert
products:
  - Elastic Cloud Enterprise
  - Elastic Cloud Hosted
  - Elastic Cloud Serverless
  - Elastic Cloud on Kubernetes
  - Elastic Observability
  - Elastic Stack
  - Elasticsearch
  - Kibana
applies_to:
  - Elastic Cloud Serverless: Generally available
  - Elastic Stack: Generally available since 9.3
---

# Convert processor
The **Convert** processor converts a field to a different data type. For example, you could convert a string to an integer.
To convert a field to a different data type:
1. Select **Create** → **Create processor**.
2. Select **Convert** from the **Processor** menu.
3. Set the **Source Field** to the field you want to convert.
4. (Optional) Set **Target field** to write the converted value to a different field.
5. Set **Type** to the output data type.

<note>
  If you add a **Convert** processor inside a condition group (a **WHERE** block), you must set a **Target field**.
</note>

This functionality uses the Elasticsearch [Convert processor](https://docs-v3-preview.elastic.dev/elastic/elasticsearch/tree/main/reference/enrich-processor/convert-processor) internally, but you configure it in Streamlang. Streamlang doesn't always have 1:1 parity with the ingest processor options and behavior. Refer to [Processor limitations and inconsistencies](/elastic/docs-content/pull/5664/solutions/observability/streams/management/extract#streams-processor-inconsistencies).

## YAML reference

In [YAML mode](/elastic/docs-content/pull/5664/solutions/observability/streams/management/extract#streams-editing-yaml-mode), configure the convert processor using the following parameters. For the complete Streamlang syntax, refer to the [Streamlang reference](https://docs-v3-preview.elastic.dev/elastic/docs-content/pull/5664/solutions/observability/streams/management/streamlang).

| Parameter        | Type    | Required | Description                                                            |
|------------------|---------|----------|------------------------------------------------------------------------|
| `from`           | string  | Yes      | Source field containing the value to convert.                          |
| `type`           | string  | Yes      | Target data type: `integer`, `long`, `double`, `boolean`, or `string`. |
| `to`             | string  | No       | Target field for the converted value. Defaults to the source field.    |
| `ignore_missing` | boolean | No       | When `true`, skip this processor if the source field is missing.       |

<note>
  When using `convert` inside a condition (`where` block), you must set a `to` field that is different from `from`.
</note>

```yaml
- action: convert
  from: attributes.status_code
  type: string
  to: attributes.status_code_int
```