# Why Go's json.Unmarshal Requires a Pointer to a Pointer

DevFeed: [Why Go's json.Unmarshal Requires a Pointer to a Pointer](<https://devfeed.tech/articles/fatih-s-question-20832.md>)

Original publisher: [Read original article](<https://dave.cheney.net/2020/05/16/fatihs-question>)

Author: Dave Cheney

Published: 2020-05-16T11:31:37Z

Content type: tutorial

Language: en

Sources: [Dave Cheney](<https://devfeed.tech/sources/dave-cheney.md>)

Topics: [Go Language](<https://devfeed.tech/topics/go-language.md>), [JSON](<https://devfeed.tech/topics/json.md>)

Tags: [go](<https://devfeed.tech/tags/go.md>), [json](<https://devfeed.tech/tags/json.md>), [pointers](<https://devfeed.tech/tags/pointers.md>), [programming](<https://devfeed.tech/tags/programming.md>)

## AI overview

A Go tutorial explains why JSON decoding requires passing a pointer to the caller's value, including why a pointer to a pointer is needed in one case.

## Source excerpt

A few days ago Fatih posted this question on twitter. I'm going to attempt to give my answer, however to do that I need to apply some simplifications as my previous attempts to answer it involved a lot of phrases like a pointer to a pointer, and other unhelpful waffling. Hopefully my simplified answer can [...]