How to Check My Golang Version (Win, MacOS, Linux)

5/5 - (2 votes)

To check the Go version installed on your system, simply run go version in your terminal or shell. This command returns the current Go version you have installed.

If you need to identify the version of Go used to build a specific binary application, use go version "app-name" where "app-name" refers to the built application.

Use the go version command in the terminal to find the installed Go version. Determine the version of Go used to build a binary with go version "app-name".

Checking Golang Version

To determine the version of Go (Golang) installed on your system, you can use the go version command in the terminal or command prompt.

Here are instructions for different operating systems:


  1. Open the terminal by pressing Ctrl + Alt + T or searching for “terminal” in the application launcher.
  2. Type the following command and press Enter:
go version

πŸ’‘ Example output:

go version go1.15.2 linux/amd64


  1. Launch the Terminal app by pressing Cmd + Space, typing “Terminal” in the Spotlight search, and pressing Enter.
  2. Enter the following command and hit Return:
go version

🌟 Example output:

go version go1.15.2 darwin/amd64


  1. Press Win + R to open the Run dialog, type "cmd", and press Enter to launch the Command Prompt.
  2. Type the below command and hit Enter:
go version

πŸŽ‰ Example output:

go version go1.15.2 windows/amd64

Installing Golang

To get started with Golang, you need to download and install it on your operating system. Follow the installation instructions for your specific operating system below:


To install Golang on Linux, first download the latest version for your system. Once downloaded, extract the archive:

tar -C /usr/local -xzf go1.20.4.linux-amd64.tar.gz

Next, add the Go binary to your PATH by editing the ~/.profile or ~/.bash_profile file:

export PATH=$PATH:/usr/local/go/bin

Restart your terminal and check that Golang is installed with go version. 🐧


For MacOS users, you can download the latest Golang package for your system. Run the downloaded package and follow the installation instructions.

Alternatively, you can use Homebrew:

brew install go

Verify your installation with go version. 🍏


To install Golang on Windows, download the latest Windows installer. Run the downloaded installer and follow the installation instructions. Ensure that the “Add to PATH” option is selected during installation.

Open a command prompt and verify your installation with go version. πŸ’»

By following these steps, you’ll have Golang installed on your system, and you can start writing your own Go programs! For more information on installing Go from source, refer to the official documentation. πŸ”§

Golang Release History

Go, also known as Golang, has had a rich release history, with multiple major and minor versions launched over the years. Each major release brings new and exciting features, improvements, and bug fixes for developers.

Starting from Go 1.13, the go command experienced significant enhancements, making it more efficient than ever. This version also introduced a module mirror and checksum database run by Google to download and authenticate modules by default source.

In Go 1.15, significant changes were made to the linker and improvements in the garbage collector and standard library. This version also deprecated certain methods, improving language precision and laying the groundwork for upcoming releases.

Moving on to Go 1.16, developers saw improvements in file embedding, better support for Apple Silicon, and enhancements in the core library. Important updates to the go command provided a more secure way to download packages.

With Go 1.17, users experienced a more advanced and refined garbage collector alongside other improvements in the standard library. This major Go release also reduced the generated binaries’ size, leading to a more efficient and lightweight overall build.

As for the upcoming versions, Go 1.18 is planned to bring significant improvements to the language with the inclusion of generics. Moreover, Go 1.19 and Go 1.20 are expected to maintain the same upward trajectory by introducing more improvements and enhancements.

Golang’s release history ensures that each version comes with better and more reliable features. By regularly updating the compiler, binary release, and other aspects of the language, Go releases offer new and innovative solutions for developers. πŸš€

Now you’re all set to stay updated on Golang releases! For a detailed overview of each release, please refer to the official Release History or the download page for previous versions.

Understanding Golang Versioning System

The Go programming language, also known as Golang, follows a systematic approach for versioning to maintain compatibility and stability in the ecosystem. This versioning system is a foundation for developers to easily understand the changes and updates in the language as it evolves.

Go releases follow a naming convention represented by major.minor.patch numbers, where “major” signifies significant changes, “minor” denotes backward-compatible enhancements, and “patch” indicates bug fixes. For instance, if the current version of Go is 1.16.5, it means it is the first major version (1), the sixteenth minor version (16), and the fifth patch version (5) πŸš€.

The Go team releases new versions frequently with improvements and bug fixes. Regular updates ensure that your system has the latest features and security developments πŸ”’.

To check the installed Go version on your system, run the command go version in your terminal/shell/command line. This will display the version number, like go version go1.16.5 linux/amd64.

When working with Go modules, you may encounter semantic versioning. This is a universal versioning system for software libraries and packages to maintain compatibility and ease of use. Go modules follow the semantic versioning format vX.Y.Z, where X is the major version, Y is the minor version, and Z is the patch version.

For example, a module’s version might look like v0.5.3. The v prefix in the format indicates the semantic versioning support πŸ“˜.

It’s essential to stay updated on your Golang version and the modules you use to leverage the most recent improvements and avoid potential issues. As a developer, understanding the Golang versioning system empowers you to make informed decisions about the language and library updates you choose for your projects 🌟. So, always keep an eye on the Module version numbering and Release History pages. Happy coding! πŸ’»

Golang Binary Releases


Go releases binary files for a range of architectures, catering to the Linux ecosystem’s diverse hardware landscape.

The most commonly used binary is for the linux/amd64 architecture, which targets 64-bit Intel and AMD systems. For example, you can download the Go 1.20 release for linux/amd64 from the official Go website.

Other supported architectures include linux/386 (32-bit systems), linux/arm (ARM devices), and linux/arm64 (64-bit ARM devices). To install the chosen binary, extract the archive and follow the installation instructions for your specific Linux distribution. 🐧


Go binary releases are also available for MacOS systems.

The darwin/amd64 binary supports 64-bit Intel-based Macs running macOS 10.12 (Sierra) or later. With the introduction of Apple’s M1 chip, the Go team has introduced a new binary targeting the ARM64 architecture: darwin/arm64.

You can easily download the appropriate binary for your MacOS device from the official Go website. Once downloaded, follow the provided installation instructions to set up Go on your Mac. 🍏


Go supports FreeBSD across various architectures, such as freebsd/amd64 (64-bit Intel and AMD systems), freebsd/386 (32-bit systems), and freebsd/arm (ARM devices).

To get the desired binary for your FreeBSD system, visit the official Go website and choose the suitable version. After downloading, follow these instructions to install Go on FreeBSD. 🐑


For Windows users, Go binary releases are available for both 32-bit (x86) and 64-bit (amd64) Intel and AMD systems.

You can download the windows/amd64 or windows/386 binary files directly from the official Go website. Installation is as simple as running the MSI installer for your chosen architecture, which sets up Go on your Windows system. πŸ–₯️

Updating Golang

Upgrading Golang to the latest version on your system is a breeze. πŸ˜ƒ This brief guide will show you how to efficiently update your Go installation to the most recent version.

First of all, you should remove any previous Go installation on your system. On a Linux machine, you can do that by executing the following command:

$ rm -rf /usr/local/go

For Mac and Windows users, you should remove the Go installation directory in your system. The default directory is usually /usr/local/go. After the old installation has been removed, you can proceed with installing the latest Go version.

Visit the official Go download page to find the latest Go release for your operating systemβ€”be it Linux, Mac, or Windows. Download the necessary archive and proceed with the installation. For example, on a Linux system, you would use something like:

$ tar -C /usr/local -xzf go1.14.3.linux-amd64.tar.gz

To make sure that the update process was successful, you can verify the installed Go version with the command:

$ go version

This should return the information of the updated Go version, alongside your operating system and architecture. ✨

That’s it! You’ve successfully updated Go on your system. By following these steps, you ensure that you use the most recent features and stay on top of bug fixes and performance improvements. Keep coding! πŸš€

Uninstalling Golang


To uninstall Golang on Linux, you can use one of the following methods:

  1. Remove the go directory: Simply delete the go directory, usually located at /usr/local/go. Use the terminal command: sudo rm -rf /usr/local/go
  2. Using apt-get package manager: If you’ve installed Golang using the package manager, run the following commands to uninstall it: sudo apt-get uninstall purge golang* sudo apt-get update


On MacOS, uninstalling Golang is as simple as removing the go directory. The directory is typically located at /usr/local/go. You can run the following command in your terminal:

sudo rm -rf /usr/local/go

Make sure to also remove any environment variables associated with Golang in your .bash_profile or .zshrc file.


For Windows, follow these steps to uninstall Golang:

  1. Open the Control Panel.
  2. Navigate to Programs and Features.
  3. Locate the Go Programming Language entry in the list of installed programs.
  4. Click on it and select Uninstall.

After uninstalling, remember to remove Golang environment variables from your system. You can do this by navigating to the System Properties and editing the Environment Variables.

πŸ’‘ Uninstalling Golang completely might require you to remove Golang-related files and directories from various locations on your computer. To ensure a clean uninstall, check your PATH, GOPATH, and GOROOT variables, and remove any references to Golang.

Managing Golang Path Environment

When working with Golang, it’s important to manage your PATH environment variable to ensure your system can locate and execute the Go binaries. In this section, we’ll cover how to manage your Golang path environment on different platforms, such as Linux, macOS, and Windows.


On Linux systems, you can set the PATH environment variable by editing either /etc/profile or $HOME/.profile files. Add the following lines to one of these files, replacing /path/to/your/go/bin with the actual path to your Go binary directory:

export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin:/path/to/your/go/bin

After saving the changes, restart your terminal or run source $HOME/.profile to apply the changes. Now you should be able to run Go commands from any directory in your system. πŸ˜„


For macOS, follow a similar process as Linux. Open your $HOME/.profile or $HOME/.bash_profile file and add the following lines, again replacing /path/to/your/go/bin with the appropriate Go binary directory:

export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin:/path/to/your/go/bin

Save the file, restart your terminal, and run source $HOME/.profile or source $HOME/.bash_profile. Your Go commands should work properly now. πŸ‘


On Windows, you’ll need to update the system environment variables.

  1. Right-click on “My Computer” or “This PC” and select “Properties”.
  2. Click on “Advanced system settings”.
  3. In the “System Properties” window, click on the “Environment Variables” button.

Now, locate the “Path” variable in the “System variables” section and click “Edit”. Add the following paths to the list, replacing C:\path\to\your\go\bin with the correct path to your Go binary directory:


Click “OK” to save the changes. Restart your Command Prompt or PowerShell, and the Go commands should be functional. πŸŽ‰

Working with Multiple Golang Versions

Working with multiple Golang versions on a single project can be essential, especially when you need to maintain compatibility across different environments or test new changes. πŸš€

One way to manage multiple versions is by using the go get command. This allows you to install different versions of Go alongside your existing installation.

For example, if you want to install Go 1.10.7 in addition to your current version, you can run:

go get

After installing the new version, you can use it by referring to its specific binary, like go1.10.7 for Go 1.10.7. With each version’s binary, you can perform any common tasks such as building, testing, or running your programs.

Using environment variables can also help in managing multiple versions. For instance, the GOROOT variable points to the installation directory of a specific Go version. To know where a specific version is installed, you can run:

go1.10.7 env GOROOT

This command will return the path to Go 1.10.7 installation directory. By using the proper GOROOT value, you can easily switch between different versions while working on your project. πŸ”„

Another powerful tool for managing multiple Golang versions is goenv. With goenv, you can set specific Go versions for each project or globally on your system. To install a new Go version using goenv, run:

goenv install 1.10.7

Then, you can set the local version for your project by executing:

goenv local 1.10.7

This sets the Go version for that particular directory and creates a .go-version file that you can add to your project to keep consistent environment settings. πŸ“

In conclusion, managing multiple Golang versions can be done effortlessly with the right tools and techniques like go get, environment variables, and goenv. This ensures compatibility and smooth migration between different Go releases. Happy coding! πŸŽ‰

Golang Release Policy

The Go team at Google follows a strict release schedule, ensuring that users receive the latest improvements and bug fixes in a timely manner 😊.

Typically, Go has two major releases every year, with the frequency of about six months between each release. These major releases not only include new features and performance enhancements πŸ’ͺ, but also address critical security issues, making them essential for developers to stay up-to-date πŸ›‘οΈ.

For instance, Go 1.20 was released on February 1, 2023, and it brought several major improvements for developers and the overall community. Major releases are supported with critical fixes and security updates until the subsequent major release; for example, Go 1.5 was supported till Go 1.7’s release, and Go 1.6 remained supported until Go 1.8’s release πŸ”„.

In addition to major releases, the Go team also issues minor revisions as needed. These revisions, like Go 1.6.1 and Go 1.6.2, focus on addressing specific critical problems and security concerns that arise between major releases πŸ”§.

Adhering to a consistent release policy helps Go remain a popular choice for programming among developers 🌟. It provides them with current features and improvements while also ensuring that any vulnerabilities or bugs get resolved quickly, maintaining a reliable and secure environment for developers and their projects πŸ—οΈ.

So, while working with Go, make sure to keep an eye on the latest releases and update your projects accordingly! By staying informed and updated, you’ll benefit from the most recent improvements πŸ’Ό and ensure that your projects stay secure and compliant with the ever-evolving standards πŸš€.

Frequently Asked Questions

How can I find out my installed Golang version?

You can find out the installed version of Go on your system by running the command go version in your terminal or command prompt. This command will display the version number and the OS it runs on. Example output:

go version go1.17.6 linux/amd64

How do I update my Go version?

To update your Go version, visit the official Go downloads page and download the latest release binary for your platform. Follow the installation instructions provided on the page, and after completing the installation, your Go version will be updated.

What is the latest Go version available?

The latest Go version can be found on the official Go downloads page. This page is regularly updated with the most recent releases, and you can locate the latest version number at the top of the available downloads list.

How can I switch between different Go versions?

Switching between different Go versions can be achieved by using the go command with the specific version number you want to use. For example, if you have Go 1.17.6 and Go 1.16.13 installed, you can use go1.17.6 or go1.16.13 instead of the regular go command.

Alternatively, you can use tools like gvm (Go Version Manager) to help manage multiple Go versions.

Is it possible to downgrade my Go version?

Yes, you can downgrade your Go version. To do so, visit the Go downloads page and download the desired older version of Go for your platform. Follow the installation instructions provided on the page to install the older version. You can then switch between the versions as needed using the methods described above.

How can I check the Go version of a binary file?

To check the Go version used to create a binary file, you can use the go version command followed by the name of the binary file. For example:

go version ./my-binary-file

This command will display information on the binary file, such as the Go version it was built with and the target platform.