diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml
index 60efd6b31ae32a51679f1beec22f29c3da7f1f91..73f7a1811cac304f36f32e40c54fc73d88550732 100644
--- a/.github/workflows/release.yaml
+++ b/.github/workflows/release.yaml
@@ -82,3 +82,4 @@ jobs:
           args: release --release-notes=/tmp/release.txt --skip-validate
         env:
           GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+          HOMEBREW_TAP_GITHUB_TOKEN: ${{ secrets.BOT_GITHUB_TOKEN }}
diff --git a/.goreleaser.yml b/.goreleaser.yml
index cc8d13b07d5258b9a972e81b918152bf1881aef8..1668715780df1e9cd1953e96eba174439dd2ee3a 100644
--- a/.goreleaser.yml
+++ b/.goreleaser.yml
@@ -15,3 +15,19 @@ archives:
   - name_template: "{{ .Binary }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
     files:
       - none*
+brews:
+  - tap:
+      owner: fluxcd
+      name: homebrew-tap
+      token: "{{ .Env.HOMEBREW_TAP_GITHUB_TOKEN }}"
+
+    folder: Formula
+    homepage: "https://toolkit.fluxcd.io/"
+    description: "GitOps Toolkit CLI"
+
+    dependencies:
+      - name: kubectl
+        type: optional
+
+    test: |
+      system "#{bin}/gotk --version"
diff --git a/docs/get-started/index.md b/docs/get-started/index.md
index 6c6a06f6f37261c28f6107391b31612359e90fb8..d6494b7be1bec59e444fbaafd0013547c6c6d62e 100644
--- a/docs/get-started/index.md
+++ b/docs/get-started/index.md
@@ -19,7 +19,15 @@ export GITHUB_USER=<your-username>
 
 ## Install the toolkit CLI
 
-To install the latest `gotk` release run:
+To install the latest `gotk` release on MacOS and Linux using
+[Homebrew](https://brew.sh/) run:
+
+```sh
+brew tap fluxcd/tap
+brew install gotk
+```
+
+Or install `gotk` by downloading precompiled binaries using a Bash script:
 
 ```sh
 curl -s https://toolkit.fluxcd.io/install.sh | sudo bash
@@ -29,7 +37,7 @@ The install script downloads the gotk binary to `/usr/local/bin`.
 Binaries for macOS and Linux AMD64/ARM64 are available for download on the 
 [release page](https://github.com/fluxcd/toolkit/releases).
 
-To configure your shell to load gotk completions add to your bash profile:
+To configure your shell to load gotk completions add to your Bash profile:
 
 ```sh
 # ~/.bashrc or ~/.bash_profile
diff --git a/docs/guides/installation.md b/docs/guides/installation.md
index 5d7957852fc80a82e92c63c703de586be00786d3..be99fe35f7607c853a3e6784d346db5df9c8d477 100644
--- a/docs/guides/installation.md
+++ b/docs/guides/installation.md
@@ -8,13 +8,24 @@ to manage one or more Kubernetes clusters.
 You will need a Kubernetes cluster version **1.16** or newer
 and kubectl version **1.18** or newer.
 
-Install the toolkit CLI with:
+## Install the toolkit CLI
+
+With Homebrew:
+
+```sh
+brew tap fluxcd/tap
+brew install gotk
+```
+
+With Bash:
 
 ```sh
 curl -s https://toolkit.fluxcd.io/install.sh | sudo bash
+
+# enable completions in ~/.bash_profile
+. <(gotk completion)
 ```
 
-The install script downloads the gotk binary to `/usr/local/bin`.
 Binaries for macOS and Linux AMD64/ARM64 are available for download on the 
 [release page](https://github.com/fluxcd/toolkit/releases).