Gzip faz um JSON leve

Você pode economizar até dez vezes em termos de carregamento e tamanho ao compactar uma estrutura JSON.

func JsonGetHandler(w http.ResponseWriter, r *http.Request) {
// create header
w
.Header().Add("Accept-Charset", "utf-8")
w
.Header().Add("Content-Type", "application/json")
w
.Header().Set("Content-Encoding", "gzip")
// Gzip data
gz
:= gzip.NewWriter(w)
json
.NewEncoder(gz).Encode(data)
gz
.Close()
}

(Neste último exemplo, você substitui dados em sua estrutura).