How to efficiently concatenate strings in go

New Way:

From Go 1.10 there is a strings.Builder type, please take a look at this answer for more detail.

Old Way:

Use the bytes package. It has a Buffer type which implements io.Writer.

package main

import (

func main() {
    var buffer bytes.Buffer

    for i := 0; i < 1000; i++ {


This does it in O(n) time.

Leave a Comment