How to Deploy a Golang WebApp to Heroku?

Heroku is a cloud-based platform that allows developers to deploy, manage, and scale web applications with ease. With Heroku, you can deploy web applications built in various programming languages, including Golang. In this tutorial, we'll show you how to deploy a Golang web app to Heroku.


Before we begin, you'll need the following −

  • Basic knowledge of Go programming language

  • Git installed on your local machine

  • Heroku CLI installed on your local machine

Step 1: Create a Golang Web App

First, let's create a simple Golang web application. Open your preferred code editor and create a new directory for your application. Inside the directory, create a new file called main.go and add the following code −

package main

import (

func main() {
   port := os.Getenv("PORT")
   if port == "" {
      port = "8080"

   http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
      fmt.Fprintln(w, "Hello, World!")

   http.ListenAndServe(":"+port, nil)

This code creates a simple HTTP server that listens on the specified port and returns "Hello, World!" for any HTTP request made to it.

Step 2: Initialize Git

Next, let's initialize Git in our project directory. Open a terminal or command prompt, navigate to your project directory, and run the following command −

git init

This initializes Git in your project directory.

Step 3: Create a Heroku App

Now, let's create a new Heroku app. Open a terminal or command prompt and run the following command −

heroku create <app-name>

Replace <app-name> with your desired name for the Heroku app. This command creates a new Heroku app and sets up a remote Git repository for it.

Step 4: Commit and Push Your Code

Next, let's commit and push our code to the Heroku app's Git repository. Run the following commands in your terminal or command prompt −

git add .
git commit -m "Initial commit"
git push heroku master

This will commit your code to your local Git repository, and push it to the remote Git repository on Heroku.

Step 5: Verify Your Deployment

Finally, let's verify that our app has been deployed successfully. Run the following command in your terminal or command prompt −

heroku open

This will open your web browser and navigate to your deployed app's URL. You should see "Hello, World!" displayed on the page.


Congratulations! You've successfully deployed a Golang web app to Heroku. Heroku makes it easy to deploy and scale your web applications, allowing you to focus on building your app rather than managing infrastructure.

Updated on: 05-May-2023


Kickstart Your Career

Get certified by completing the course

Get Started