The goo.gl shutdown happened in stages: Google stopped letting people create goo.gl links in 2018 and 2019, then announced in July 2024 that all goo.gl links would stop working after August 25, 2025. On August 1, 2025, Google narrowed that plan so that only links that showed no activity in late 2024 were switched off, while active links keep working, and so do links generated by Google apps such as Maps, which were excluded from the start. If you still publish goo.gl links, check each one and move the ones you control to a shortener you can manage.
The goo.gl shutdown timeline
Every date below comes from Google’s own announcements, listed in the sources at the end of this guide.
| Date | What happened |
|---|---|
| 2009 | Google launches the Google URL Shortener. |
| March 30, 2018 | Google announces that it is turning down goo.gl and replacing it with Firebase Dynamic Links. Existing links keep redirecting. |
| April 13, 2018 | Anonymous users, and users who had never created a short link, can no longer create goo.gl links in the console. |
| May 30, 2018 | Only developer projects that had already used the URL Shortener APIs can still create short links. |
| March 30, 2019 | Google discontinues the goo.gl console and the URL Shortener APIs. Existing links keep redirecting. |
| July 18, 2024 | Google announces that goo.gl links will no longer return a response after August 25, 2025, except links generated via Google apps, such as Maps sharing. |
| August 23, 2024 | A warning page starts appearing on a share of goo.gl links, a share meant to grow until the shutdown date. |
| August 1, 2025 | Google narrows the shutdown to preserve actively used links. |
| August 25, 2025 | goo.gl links that showed no activity in late 2024 stop working. Firebase Dynamic Links shuts down the same day. |
When it announced the shutdown in July 2024, Google explained that existing goo.gl links saw less and less traffic, and that more than 99% of them had no activity in the last month.
What Google changed on August 1, 2025
The July 2024 plan was simple: after August 25, 2025, every goo.gl link would return an error, except links generated by Google apps. But goo.gl links live in places that are hard to edit, and Google acknowledged that they are embedded in “countless documents, videos, posts and more”.
On August 1, 2025, Google updated the announcement: “we’ve adjusted our approach in order to preserve actively used links.” The update made three points:
- Only inactive links were targeted. Links that showed no activity in late 2024 had been redirected to a message saying the link would be deactivated in August. Google said these were “the only links targeted to be deactivated”.
- Everything else stays. “All other goo.gl links will be preserved and will continue to function as normal.”
- A simple test. Google told people to visit their links: a link that redirects without a message will continue to work, and a link that shows “This link will no longer work in the near future” will not work after August 25.
Google still recommended moving affected links to another URL shortener.
What still works in October 2026
Based on Google’s published statements as of October 2026:
| Link or action | Status |
|---|---|
| goo.gl links that redirect without a warning message | Preserved, per the August 1, 2025 update |
| goo.gl links generated via Google apps, such as Maps sharing | Continue to function, per the July 2024 announcement |
| goo.gl links that showed “This link will no longer work in the near future” | Stopped working after August 25, 2025 |
| Creating new goo.gl links in the console or through the API | Not possible since March 30, 2019 |
| Firebase Dynamic Links on page.link and custom domains | Shut down from August 25, 2025, with clicked links returning HTTP 404, according to the Firebase FAQ |
Google can change its approach again, so test the links that matter to you rather than relying on any summary, including this one.
How to find goo.gl links you published
Search code and content files
If your site, app or documentation lives in files, one command lists every goo.gl link with its file and line number:
grep -rnoE "https?://goo\.gl/[A-Za-z0-9_/-]+" .
The pattern matches goo.gl/... addresses only, not subdomains such as maps.app.goo.gl.
Search documents, spreadsheets and your CMS
- In Google Docs or Word, use Find and search for
goo.gl. - In Google Sheets, extract a goo.gl link from a cell with a formula such as
=REGEXEXTRACT(A2, "https?://goo\.gl/[A-Za-z0-9_/-]+"). - In a content management system, search posts and pages for
goo.gl, or search a database export.
Check the places people forget
- Email templates and automated email sequences
- PDFs, slide decks and e-books
- Social media bios and pinned posts
- Video descriptions
- App store listings
- README files and package metadata
- Printed materials and QR codes
- Old help center articles and blog posts
Check each link and record its destination
For each goo.gl link, find out whether it still resolves and where it goes. With curl, you can read the redirect without following it:
curl -s -o /dev/null -w "%{http_code} %{redirect_url}\n" https://goo.gl/XXXXXX
A 301 or 302 status followed by an address means the link still redirects, and the address is its destination. If the request returns an error, or the redirect leads to a Google notice instead of your page, treat the link as broken. For a list of links, a short loop builds a table of results:
while read -r link; do
printf '%s\t%s\n' "$link" "$(curl -s -o /dev/null -w '%{http_code} %{redirect_url}' "$link")"
done < googl-links.txt > googl-destinations.tsv
You can also paste links one at a time into Blinkhop’s free link expander, which shows where any short link leads.
Record the results in a spreadsheet with five columns: old link, destination, where it appears, new link and replaced (yes or no). If a link no longer works, look for its destination in your own records: CMS revisions, campaign documents, analytics exports or old emails. Web archives such as the Internet Archive’s Wayback Machine may also have a copy of the page that used the link, which can help you work out the intended destination.
Replace goo.gl links in bulk
Once you have a list of destinations, create new short links for them. For a handful, paste them on blinkhop.com. For a longer list, use the API. This loop shortens one destination per line and writes each destination next to its new link:
while read -r url; do
short=$(curl -sf "https://api.blinkhop.com/v1/links?format=text" \
--data-urlencode "url=$url") || short="ERROR"
printf '%s\t%s\n' "$url" "$short"
sleep 3
done < destinations.txt > new-links.tsv
The 3-second pause keeps the loop under the free limit of 20 new links per minute. The daily limit without a key is 300 links per IP address. For bigger migrations, POST /links/bulk accepts up to 100 URLs per request, as described in the API reference and on the bulk shortening page.
Then replace each old link with its new one, starting with the places that get the most traffic and the ones that are hardest to change later. A few tips:
- Use custom endings for links people will read, such as
zou.sh/annual-report, so the new link says what it is. - Leave active goo.gl links in print alone for now. If they still redirect, they keep working according to Google. Replace them in the next print run.
- Keep your mapping file. A list of old links, destinations and new links makes any future move much easier.
How to choose a goo.gl replacement
The goo.gl story has a second lesson. Firebase Dynamic Links, the product Google recommended to developers in 2018 as the replacement for goo.gl, itself shut down in 2025. Whatever service you choose, plan for the day you might need to leave it.
| What to check | Why it matters after goo.gl |
|---|---|
| Link lifetime | Do links expire, or get removed when inactive? Inactive goo.gl links were the ones switched off. |
| A domain you own | With your own short domain, a future move to another service does not have to break your links. |
| Your own records | Keep a list of every short link and its destination, so you can recreate them anywhere. |
| Direct redirects | Ads or warning pages between the click and the destination slow visitors down. |
| Safety | Destination screening and link previews help keep a shared short domain clean. |
| Privacy | Check what the service stores about the people who click. |
| Automation | An API or bulk tool makes this migration, and the next one, much faster. |
For reference, Blinkhop links on zou.sh never expire unless an owner sets an expiry date, redirects go straight to the destination without ads, every destination is screened against a phishing and malware blocklist, and visitor IP addresses are never stored. Branded domains come with accounts, which are in early access. Our comparison pages look at how other popular shorteners differ.
Key takeaways
- Users and developers have not been able to create goo.gl links since March 30, 2019.
- Google’s July 2024 plan to switch off every goo.gl link after August 25, 2025 was narrowed on August 1, 2025: only links that showed no activity in late 2024 stopped working.
- goo.gl links that redirect without a warning, and links generated via Google apps such as Maps sharing, keep working according to Google.
- Find your goo.gl links, record their destinations, then replace the ones you control, starting with the busiest.
- Choose a replacement with a clear link lifetime policy, and keep your own list of links and destinations.
Sources
- Google Developers Blog, “Transitioning Google URL Shortener to Firebase Dynamic Links”, March 30, 2018: https://developers.googleblog.com/en/transitioning-google-url-shortener-to-firebase-dynamic-links/
- Google Developers Blog, “Google URL Shortener links will no longer be available [updated]”, July 18, 2024, updated August 1, 2025: https://developers.googleblog.com/2018/03/transitioning-google-url-shortener.html
- Firebase, “Dynamic Links Deprecation FAQ”, last updated October 6, 2026: https://firebase.google.com/support/dynamic-links-faq