> For the complete documentation index, see [llms.txt](https://docs.diaflow.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.diaflow.io/studio/nodes/action-nodes/get-geo-location.md).

# Get GEO Location

Convert an address into coordinates or coordinates into a city name.

## Get GEO Location

### What does it do?

The **Get GEO Location** node converts a place into coordinates, or coordinates into a place name. Think of it like a delivery desk that can read an address and give you the map pin, or read the map pin and tell you the city.

It helps when your workflow needs a location in a simple format that later steps can reuse.

#### Smart features

* **Two simple modes**: use **Manual** when Diaflow should look up the location for you. Use **Local** when you already know the answer and just want to pass it through.
* **Works with earlier step data**: in **Manual** mode, you can insert values from previous nodes into **Value**.
* **City-first matching**: when you ask for a place name from coordinates, Diaflow looks for the city first. If no city is available, it may return the region or state instead.
* **Clean single result**: the node always returns one ready-to-use text value, so the next node can use it easily.

<figure><img src="https://3864624312-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdo1pkMnofwxf3lpWftw%2Fuploads%2F2bZE6iIR0kSqYo0mnnzX%2FCap%202026-06-01%20at%2016.01.09.gif?alt=media&amp;token=42085da2-9fa7-4134-8b2b-60fce4ce4902" alt=""><figcaption></figcaption></figure>

### Real-World Business Value

* Convert customer addresses into coordinates before sending them to a map, routing, or weather step.
* Turn mobile check-in coordinates into readable city names for reports, approvals, or support logs.
* Reuse known office or warehouse locations without doing the same lookup again.

### Step-by-Step Setup

* In **Method**, choose **Manual** if Diaflow should look up the location for you. Choose **Local** if you already have the final location value.
* In **Data to retrieve**, choose **City name** if you want a place name. Choose **Latitude and Longitude** if you want coordinates.
* If you chose **Manual**, fill **Value** with the right kind of input:
  * For **City name**, enter coordinates in `lat,lng` format, like `10.8231,106.6297`.
  * For **Latitude and Longitude**, enter a clear address, like `Ho Chi Minh City, Vietnam`.
  * You can insert data from a previous node into **Value**.
* If you chose **Local** and selected **City name**, enter the final value in **Local city**.
* If you chose **Local** and selected **Latitude and Longitude**, enter both numbers in **Local geo**.
* Run the workflow and check the **Output** tab.

<figure><img src="https://3864624312-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdo1pkMnofwxf3lpWftw%2Fuploads%2FR2J9o7aTmxPMkFmaVdx7%2Frounded-image%20(86).png?alt=media&amp;token=b9b885b6-a7f1-4f13-95ca-a4f417ad8a64" alt=""><figcaption></figcaption></figure>

### The Transformation: Before & After

**Before — messy input from a form**

```json
{
  "Value": "Ho Chi Minh City, Vietnam"
}
```

**After — clean output from the node**

```json
{
    "output": "10.8230989,106.6296638"
}
```

The output is always one text value. It does not split latitude and longitude into separate fields.

<figure><img src="https://3864624312-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdo1pkMnofwxf3lpWftw%2Fuploads%2FijDSdCWssw5jAdAIYqcY%2Frounded-image%20(87).png?alt=media&amp;token=fd57a9ec-40d8-475f-8eb8-cd4ba54e958e" alt=""><figcaption></figcaption></figure>

### Tips &  Warnings for First-Timers

#### Best practices

* Use full place names in **Value**, such as `Hanoi, Vietnam`, instead of short names like `Springfield`.
* Match the input to your selection in **Data to retrieve**.
  * Use coordinates when asking for **City name**.
  * Use an address when asking for **Latitude and Longitude**.
* Use **Local** mode when the city or coordinates are already known. This keeps the setup simple.
* Test with real sample data if the exact place label matters. Some locations may return a city, while others may return a province or state.

#### Warnings

* Do not leave **Value** empty in **Manual** mode. An empty value will fail the lookup.
* Do not enter unclear addresses. The node uses the closest match it finds, which can be wrong for broad names.
* Do not use variables inside **Local city** or **Local geo**. Enter final values there.
* Do not leave out either latitude or longitude in **Local geo**.
* Do not expect separate latitude and longitude fields in the output. The result comes back as one text string like `10.8231,106.6297`.
* Do not use anything other than **City name** or **Latitude and Longitude** in **Data to retrieve**.
* Avoid repeating the same live lookup when you already know the location. Use **Local** mode for fixed values.
* Very slow location lookups can delay the workflow. If the result is important, test the node before publishing.

### Need help?

* Learn the basics in [How a node works](/studio/lets-start-with-the-basics/how-a-node-works.md)
* Build the full flow in [Create a workflow](/studio/manage-a-workflow/create-a-workflow.md)
* Browse related nodes in [Component List](/studio/component-list.md)
