Build simple, secure, scalable systems with Go

  • An open-source programming language supported by Google
  • Easy to learn and great for teams
  • Built-in concurrency and a robust standard library
  • Large ecosystem of partners, communities, and tools
Get Started Download

Download packages for Windows 64-bit, macOS, Linux, and more

The go command by default downloads and authenticates modules using the Go module mirror and Go checksum database run by Google. Learn more.

Go Gopher climbing a ladder.

Companies using Go

Organizations in every industry use Go to power their software and services View all stories

  • “At the time, no single team member knew Go, but within a month, everyone was writing in Go and we were building out the endpoints. It was the flexibility, how easy it was to use, and the really cool concept behind Go (how Go handles native concurrency, garbage collection, and of course safety+speed.) that helped engage us during the build. Also, who can beat that cute mascot!”

    — Jaime Enrique Garcia Lopez, Senior Software Development Manager at Capital One
  • "A small language that compiles fast makes for a happy developer. The Go language is small, compiles really fast, and as a result it lets your mind focus on the actual problem and less on the tool you are using to solve it. Code, test, debug cycles are so quick that you forget you are not working with an interpreted language. Looking at our code, you see less boilerplate and more business logic."

    — Clayton Coleman, Lead Engineer, Open Shift at RedHat
  • Go has excellent characteristics for scalability and services written using it typically have very small memory footprints. Because code is compiled into a single static binary, services can also be containerised with ease, making it much simpler to build and deploy. These attributes make Go an ideal choice for companies building microservices, as you can easily deploy into a highly available and scalable environment such as Kubernetes.”

    — Matt Boyle, Lead Software Engineer at Curve
  • "In our tightly managed environments where we run Go code, we have seen a CPU reduction of approximately 10% with cleaner and maintainable code."

    — Bala Natarajan, Sr. Director of Engineering, Developer Experience at PayPal
  • "Tooling has always been a problem with our legacy code base... but we have found that Go has excellent tooling, plus built-in testing, benchmarking, and profiling frameworks. It is easy to write efficient and resilient applications. After working on Go, most of our developers don't want to go back to other languages."

    — Benjamin Cane, Vice President and Principal Engineer at American Express
  • "...when a programming language is designed for exactly the environment most of us use right now—scalable, cloud-based servers that are optimized for performance—a lot can go right."

    — John Biggs and Ben Popper, at Stack Overflow

Try Go

Press Esc to move out of the editor.

What’s possible with Go

Use Go for a variety of software development purposes

Get started with Go

Explore a wealth of learning resources, including guided journeys, courses, books, and more.

  • In-Person Trainings
  • Ardan Labs
    Offering customized on-site live training classes.
  • Gopher Guides
    Customized In-person, remote, and online training classes. Training for Developers by Developers.
  • Boss Sauce Creative
    Personalized or track-based Go training for teams.
  • Shiju Varghese
    On-site classroom training on Go and consulting on distributed systems architectures, in India.