Permanent Fix for Google Maps Image Links


LLG sites look broken fast if you copy image URLs straight from Google Maps. They work for a while, then vanish because Google rotates those CDN links. The fix is simple: strip out the stable AF1 slug and rebuild the URL on Google’s user content host. This post shows exactly how to do it so your images stay live.

Table of Contents

Why images disappear from LLG sites

When you copy an image link from Google Maps and paste it into your site, you usually get a long URL. That long URL can be served by a Google CDN. Those CDN links are dynamic. That means Google can change them later. When Google changes the URL, your site points to an address that no longer works. The image then breaks and shows nothing on your page.

We see this all the time with the “Things To Do” and “Top Sites” sections on LLG sites. People copy the image URL and it looks fine for a while. Then the image disappears. The root cause is the dynamic CDN link, not your site code.

What we look for in the Google Maps image URL

There is a stable bit in those long URLs. It always starts with “AF1”. It might look like AF1Qip… or AF1 something similar. That part is the permanent image slug. The slug usually continues until you hit an exclamation point (!) in the string. That part is what we want.

In short:

  • Dynamic CDN links will change and break.
  • The image slug that starts with AF1 is stable.
  • We need to extract that AF1 slug and then rebuild a simple, stable URL around it.

Step-by-step: Make the image link permanent

Follow these steps. We keep them short and simple so you can copy them into your workflow.

  1. Open Google Maps and find the photo you want.
  2. Right-click the photo and choose “Copy image address” or “Copy image URL”.
  3. Paste that long URL into Notepad or a plain text editor.
  4. Find the substring that begins with “AF1”.
  5. Copy that substring up to (but not including) the first exclamation mark “!” that follows it.
  6. Append that slug to a stable host URL. We use the Google user content host: https://lh3.googleusercontent.com/
  7. So the final form is: https://lh3.googleusercontent.com/AF1…slug…=s0
  8. Use that rebuilt URL on your site instead of the full dynamic URL.

That final URL points directly to the static image on Google’s user content host. Because we use the AF1 slug and the lh3 domain, the link does not change in the same way CDN links do. The image stays live on your site.

Simple example

Imagine you copied this long dynamic URL (shortened for example):

https://some.cdn.google.com/vt/data/AF1QipXXXXXXXXXXXXXX!2e10!3m6!…&…etc

From that, you find the AF1 slug: AF1QipXXXXXXXXXXXXXX

Then you build the permanent link like this:

https://lh3.googleusercontent.com/AF1QipXXXXXXXXXXXXXX=s0

Paste that new link into your site. The image should stay visible.

Got SEO Questions? Get answers every week at 4pm ET at Hump Day Hangouts. Ask questions ahead of time, or live – just go to: https://semanticmastery.com/hdho (bookmark this!) 10+ years of insights given every week!

Get your checklist to help get better results with GBPs, faster. 

Why this works

CDN links often include session tokens, parameters, or temporary paths. Those parts can expire or be rotated by Google. The AF1 slug, on the other hand, is the core identifier for the image. By pulling that slug out and pointing it to a stable host path, we cut out the temporary parts. The result is a permalink to the photo that won't break when the CDN updates.

How to spot the AF1 slug fast

  • Paste the copied image URL into a text editor.
  • Search for “AF1”. It usually begins with “AF1”.
  • Highlight until you reach the next “!” or the end of the slug pattern.
  • If you see extra characters like “=w1024-h768-p-k-no”, you can ignore them. The slug ends before those parts.

Common mistakes and how to avoid them

  • Using the entire copied URL. That’s the dynamic one. It will often break later.
  • Grabbing the wrong part of the string. Make sure you start exactly at the “AF1” and stop at the first “!” if present.
  • Not adding the correct host. We use lh3.googleusercontent.com. If you append the slug to another host, it might not work.
  • Forgetting the size parameter. Using =s0 after the slug usually gives you the full size. You can change the size later if you like.

Extra tips we share

Here are some quick tips to save time and avoid errors:

  • Take a screenshot of the example URL format if you are still learning it.
  • Keep a small text file with the host prefix: https://lh3.googleusercontent.com/ so you can paste the slug quickly.
  • When you bulk-add images to LLG sites, automate the extract-and-build step with a simple script or find-replace in a spreadsheet.
  • If an image appears broken, check the original dynamic URL first. If it still works, re-extract the slug and rebuild the static link.

Why we teach this

We want your LLG sites to look good and stay that way. Broken images are bad for user trust and for conversions. This fix is small, fast, and usually permanent. It saves hours of troubleshooting later.

We teach many more tips like this in our documented SOPs and in our community. Some details are saved for members, but we like to share quick wins so you can get better results right away.

FAQ

Q: Can we use other hosts besides lh3.googleusercontent.com?

A: In most cases, the lh3 host is the safest choice because it serves Google user content directly. If you try to host the image on a third-party server, you will need to check copyright and re-hosting rules. The method we show keeps the image on Google’s servers but uses the stable slug.

Q: Does this violate any Google rules?

A: We are not lawyers, but we are using the image in the same form it is stored on Google’s user content host. This method does not scrape or alter the image. Still, for commercial use or rehosting, you should respect any copyright rules and the image owner’s rights.

Q: Will the AF1 slug ever change?

A: We have seen the AF1 slug remain stable for years. It has been used consistently for a long time. While nothing is ever 100% guaranteed, this approach is far more stable than using the dynamic CDN URL.

Q: What if I can’t find AF1 in the URL?

A: Some images may be hosted differently. If you don’t find AF1, try to find a similar stable-looking identifier or re-open the image in Google Maps and copy the URL again. If you still can’t find it, that image may not be safe to use as a permanent link.

Q: Can we automate this for many images?

A: Yes. You can write a small script or use a text tool to extract strings that start with AF1 and end at the first “!”. Then prepend the lh3 host and append a size parameter. This is a great task to build into your deployment flow for LLG sites.

Wrapping up

This fix is one of those small, practical things that saves us a lot of trouble. Extract the AF1 slug and rebuild the URL with https://lh3.googleusercontent.com/. Use =s0 or another size parameter. That gives you a link that does not break when Google rotates CDN addresses.

We like sharing small tips like this because they help you keep sites running smoothly. If you want more step-by-step SOPs, we offer deeper training and checklists for Local SEO and Google Business Profile work in our community.

Pro tip: Keep a plain text file with the prefix https://lh3.googleusercontent.com/ so you can paste the AF1 slug quickly. It speeds up deployment and cuts errors.