---
title: What Is an Image URL? How to Get and Share One
description: What is an image URL? Learn how to get an image URL and share it easily across websites, apps, and social media.
---

[Content Delivery Network Blog](https://blog.blazingcdn.com/en-us)

# [What Is an Image URL? How to Get and Share One](https://blog.blazingcdn.com/en-us/what-is-an-image-url-how-to-get-and-share-one)

 Written by [Vadym Borovskyi](https://blog.blazingcdn.com/en-us/author/blazingcdn) | Nov 11, 2026, 3:10:13 PM

An image URL is an absolute web address (scheme, host, path and optional query string) that returns the image file itself: an HTTP 200 response whose **Content-Type** header starts with image/, such as image/jpeg, image/webp or image/avif. If the address renders an HTML page around the picture, it is a page URL, not an image URL.

The quickest answer to how to get image URL from a web page is to right-click the picture and choose Copy image address in Chrome, Copy Image Link in Firefox or Copy Image Address in Safari. RFC 9110 (published 2022) recommends that clients and servers support URIs of at least 8,000 octets, so even long signed image URLs carrying expiry and signature parameters fit well inside that limit.

## **How an image URL resolves: request, headers, bytes**

Fetching an image URL is an ordinary HTTP GET. The client resolves the hostname, negotiates TLS, sends the path plus query string, and receives bytes plus headers. Four headers decide how that image behaves downstream: **Content-Type** (how the browser decodes it), **Cache-Control** (how long browsers and CDNs keep it), **Vary** (which request headers split the cache) and **Content-Disposition** (whether it displays inline or downloads).

The file extension in the path is cosmetic. A URL ending in .jpg that returns image/webp is a WebP image, and a URL with no extension at all can be a perfectly valid image URL. Redirects (301, 302, 307) are followed transparently by browsers, but some crawlers and email clients follow only a limited number, so the shared address should ideally be the final one.

### Where image URLs sit in the stack

Image URLs are consumed in three places: the src and srcset attributes of an img element, the url() function in CSS, and the og:image property that social platforms and chat apps read to build link previews. Each consumer fetches without the user's cookies in at least some cases, which is why an image visible to you in a logged-in session can still fail as a shared link.

## **How to get image URL from a browser, DevTools or cloud storage**

1. **Browser context menu.** Right-click and copy the image address. On responsive pages this copies the srcset candidate the browser actually chose (its currentSrc), which may be a resized or CDN-transformed variant, not the original upload.
2. **DevTools Network panel.** Filter by Img, reload, and read the request URL plus response headers. This exposes lazy-loaded images and CSS backgrounds that the context menu cannot reach.
3. **Amazon S3.** The object URL follows the virtual-hosted pattern of bucket name, then s3, then region, then amazonaws.com, then the object key. It works only if the bucket policy allows public reads; otherwise generate a presigned URL, valid for up to 7 days when signed with Signature Version 4 and long-term credentials.
4. **Google Cloud Storage and Azure Blob Storage.** Public objects are served from storage.googleapis.com followed by bucket and object name; private ones need a V4 signed URL (maximum 7 days) or, on Azure, a shared access signature token appended as a query string.
5. **Google Drive and Dropbox.** Share links return an HTML viewer by default. Dropbox serves the raw file when the dl parameter is replaced by raw set to 1; Google Drive direct-link workarounds are unofficial and have changed behavior repeatedly, so avoid them for anything embedded.

To verify any candidate, run curl with the head option against the URL and confirm a 200 status and a Content-Type beginning with image/. A text/html response means you copied a page URL.

### Which image URL to share

| URL type | Lifetime | Cache behavior | Fits |
| --- | --- | --- | --- |
| CDN URL on a custom domain | Permanent until you change it | Cacheable for a year if the filename is fingerprinted | Embeds, og:image, email, apps |
| Public bucket object URL | Permanent | Served from one storage region, egress billed at storage rates | Internal tools, CDN origin |
| Presigned or signed URL | Up to 7 days on S3 and Cloud Storage | Each signature is a new cache key unless the CDN ignores it | Private, time-limited sharing |
| Drive or Dropbox share link | Until revoked | Returns an HTML viewer by default | Human-to-human sharing |

For anything a machine will fetch repeatedly, only a CDN URL on a domain you control combines permanence with cacheability.

## **Image URL vs. page URL, signed URL and data URI**

**Image URL vs. page URL:** a page URL returns text/html that references images; an image URL returns the bytes. Image search results and photo-sharing sites mostly hand you page URLs, which break when pasted into an img element or an og:image property.

**Image URL vs. signed URL:** a signed URL is an image URL plus an expiry timestamp and a cryptographic signature in the query string. Anyone holding it can fetch the object until it expires, so it limits duration, not audience.

**Image URL vs. data URI:** a data URI embeds Base64-encoded bytes directly in HTML or CSS, adding roughly 33% to the payload and making the image cacheable only as part of the parent document. It suits icons of a few kilobytes, not photographs.

## **How CDNs generate fast image URLs**

A CDN image URL usually encodes two things: a version and a transformation. Versioning means a content hash in the filename, which allows **Cache-Control** set to public, max-age 31536000 (one year) and immutable, the directive from RFC 8246 that stops browsers from revalidating. Transformation parameters (width, height, crop mode, format) live in the path or query string, and the CDN resizes on first request, then caches the variant.

The cost is cache-key fragmentation. Six widths across three formats (AVIF, WebP, JPEG) produce 18 variants per source image, so a catalog of 20,000 images becomes 360,000 cache objects, each a cold miss once per cache tier. Format negotiation through **Vary** set to Accept multiplies this further unless the CDN normalizes the raw Accept header to a single format token, because browsers send different Accept strings.

A realistic header set for a fingerprinted hero image: Content-Type image/avif, Cache-Control public with max-age 31536000 and immutable, no Vary when the format is fixed in the URL, and **Access-Control-Allow-Origin** set to your site's origin if scripts draw the image onto a canvas, since a cross-origin image without CORS taints the canvas. On BlazingCDN, [**S3-compatible cloud storage served through the CDN**](https://blazingcdn.com/cloud-storage-cdn/) comes with custom domains, signed URLs and referrer rules included, and on-the-fly crop and resize are included at no extra charge as of November 2026.

## **Common misconceptions about image URLs**

- **"Copy image address gives the original."** It gives whichever srcset candidate the browser picked for your viewport and pixel density.
- **"The extension defines the format."** Only Content-Type does; servers can and do return AVIF from a .jpg path.
- **"Hotlinking costs nothing."** Every embed of your image URL on another site is egress on your bill; referrer rules or signed URLs limit it.
- **"A presigned URL is private."** It is bearer access: forwarded once, it works for anyone until expiry.

## **FAQ: getting and sharing an image URL**

### How do I get an image URL from Google Images?

Click the result to open the preview panel, then right-click the large preview and copy the image address. Copying from the thumbnail grid returns a Google-hosted thumbnail, not the original. The full-size image URL points to the source site, which may block hotlinking, change the file or remove it, so download and rehost anything you need to embed long term.

### Why does my image URL download instead of displaying?

The server is sending Content-Disposition set to attachment, or a generic Content-Type such as application/octet-stream instead of image/png or image/jpeg. On Amazon S3 and similar object stores, Content-Type is metadata set at upload, so fix it by re-uploading with the correct type or editing the object metadata, then purge the CDN cache for that image URL.

### How long does an Amazon S3 presigned image URL last?

An Amazon S3 presigned image URL lasts up to 7 days when signed with Signature Version 4 using long-term IAM user credentials. URLs signed with temporary credentials, such as an assumed role session, stop working when those credentials expire, even if the URL requested a longer lifetime. Plan regeneration logic accordingly rather than storing presigned image URLs in a database.

### What is an image URL's role in og:image link previews?

The og:image property must contain an absolute image URL that a crawler can fetch without cookies, authentication or JavaScript. Relative paths, expiring signed URLs and share-link viewer pages all produce blank previews. Platforms also cache the preview image, so changing the file behind the same image URL may not refresh existing previews until the platform recrawls the page.

## **Audit your top image URLs this week**

Pull the 50 most-requested image URLs from your CDN or access logs and run curl with the head option against each. Record Content-Type, Cache-Control, Vary, Age and the cache status header, then count distinct variants per source image. Any image without a fingerprinted filename and a long max-age, any raw Vary on Accept, and any source with more than 20 variants is a concrete fix with a measurable hit-ratio payoff. If the audit shows your origin doing the resizing, BlazingCDN's [**on-the-fly image processing**](https://blazingcdn.com/image-processing/) handles crop, resize, resizefit and resizefill inside CDN delivery at no extra charge, which moves that work off your servers.

[View full post](https://blog.blazingcdn.com/en-us/what-is-an-image-url-how-to-get-and-share-one)

```json
{
  "@context" : "http://schema.org",
  "@type" : "BlogPosting",
  "author" : {
    "@type" : "Person",
    "name" : "Vadym Borovskyi"
  },
  "dateModified" : "2026-11-11T15:10:14.101Z",
  "datePublished" : "2026-11-11T15:10:13Z",
  "headline" : "What Is an Image URL? How to Get and Share One",
  "image" : {
    "@type" : "ImageObject",
    "height" : 768,
    "url" : "https://143144902.fs1.hubspotusercontent-eu1.net/hubfs/143144902/Gemini-Blog/image-Nov-11-2026-03-08-18-9448-PM.jpeg",
    "width" : 1376
  },
  "mainEntityOfPage" : "https://blog.blazingcdn.com/en-us/what-is-an-image-url-how-to-get-and-share-one",
  "publisher" : {
    "@type" : "Organization",
    "logo" : {
      "@type" : "ImageObject",
      "height" : 60.0,
      "url" : "https://143144902.fs1.hubspotusercontent-eu1.net/hubfs/143144902/Logo%20b-3.png",
      "width" : 245.85367
    },
    "name" : "CDN Blog"
  }
}
```