This add-on is operated by Wreck Labs
Static IP addresses for your root domain
Last updated July 27, 2023
This article is a work in progress, or documents a feature that is not yet released to all users. This article is unlisted. Only those with the link can access it.
The Guru301 add-on is currently in beta.
Table of Contents
Guru301 is an add-on for providing redirect functionality from your root domain (like
example.com) to a subdomain (like
Because a root domain cannot use CNAME DNS records, you must use an A record that points to a static IP address. Most cloud platforms like Heroku do not provide static IP addresses out of the box, because of their dynamic nature.
Guru301 solves this problem by giving you one or more static IP addresses backed by rock-solid, high-availability redirect servers, allowing you to use your root domain with your Heroku app.
To follow SEO best practices, Guru301 issues its redirects with the 301 HTTP status code. This code is remembered by search engines, allowing you to consolidate your “link juice” to a single domain rather that splitting it, resulting in better page ranks.
Provisioning the add-on
Guru301 can be attached to a Heroku application via the CLI:
A list of all plans available can be found here.
$ heroku addons:create guru301 -----> Adding guru301 to sharp-mountain-4005... done, v18 (free)
After you provision Guru301, the
GURU301_IPS config var will be available in your app’s configuration. It contains either a single IP address or a comma-separated list of IPs (depending on which plan you selected) which you can use for your A record. You can confirm this via the
heroku config:get command:
$ heroku config:get GURU301_IPS 188.8.131.52
After you install Guru301, you will need to configure your redirect in the web dashboard and update your DNS settings to fully integrate with the add-on.
The Guru301 dashboard allows you to configure the redirect from your root domain to a subdomain.
You can access the dashboard via the CLI:
$ heroku addons:open guru301 Opening guru301 for sharp-mountain-4005
or by visiting the Heroku Dashboard and selecting the application in question. Select Guru301 from the Add-ons menu.
Configuring the redirect
Once logged into the dashboard:
- Click Add Domain.
- Enter your root domain and the subdomain you’d like to redirect it to.
- Click the Add.
Log into your DNS provider and create an A record that points your root domain to the IP address stored in
GURU301_IPS in your heroku app config. If you are on a plan that gives you multiple IPs, you can create multiple A records.
It can take some time – up to 48 hours in the worst case – for DNS changes to propagate.
You can use the
host CLI command to inspect your domain’s DNS configuration.
Migrating between plans
Changing plans will provide you with new IP addresses for your A records, but your old address(es) will continue to work in the meantime, so you will not experience any redirect downtime.
heroku addons:upgrade command to migrate to a new plan:
$ heroku addons:upgrade guru301:newplan -----> Upgrading guru301:newplan to sharp-mountain-4005... done, v18 ($49/mo) Your plan has been updated to: guru301:newplan
Removing the add-on
You can remove Guru301 via the CLI:
This will remove your redirect functionality!
$ heroku addons:destroy guru301 -----> Removing guru301 from sharp-mountain-4005... done, v20 (free)
All Guru301 support and runtime issues should be submitted via one of the Heroku Support channels.