---
title: "How to decode base64 to text in AWS Athena"
description: "How to use from_base64 in AWS Athena"
author: "Bartosz Mikulski"
author_bio: "Principal AI Engineer & MLOps Architect. I bridge the gap between \"it works in a notebook\" and \"it works for 200 million users.\""
author_url: https://mikulskibartosz.name
author_linkedin: https://www.linkedin.com/in/mikulskibartosz/
author_github: https://github.com/mikulskibartosz
canonical_url: https://mikulskibartosz.name/decode-base64-in-aws-athena
---

Decoding base64 in AWS Athena requires two steps. First, we have to use the `from_base64` function to get a binary representation of the decoded content. We don't get text automatically because we can use base64 to encode as a string any binary data, for example, a picture.

Therefore, Athena does not know that the content is a string. Because of that, we have to use the `from_utf8` function to convert the binary data into text.

The complete SQL looks like this:

```sql
select from_utf8( from_base64(base64_encoded_column) ) FROM some_table
```

One more thing. Never, ever say that base64 is encryption. It is not. That is just a method of representing binary data as a string, so you can send it to/from a REST API as a JSON object or include it in an URL.

