Free image hosting, honestly

Free image hosting works perfectly until the day it does not, and nobody sends you a message when that day arrives.

An image hosted elsewhere is a dependency. It works until the host changes something, and the failure is invisible to you because your browser has the image cached.

A page with two images loading and one showing a broken placeholder.
A page with two images loading and one showing a broken placeholder.

This guide covers the three failure modes, the checks that predict them, and when to keep images with the page.

Three ways it fails

Silent deletion. Free hosts routinely remove images that have not been viewed recently. A page that is quiet for six months comes back with gaps in it.

Address changes. The host reorganises, moves domain, or changes its address format. Old addresses stop resolving, often without redirects.

Hotlink blocking. The host decides to stop serving images to other sites. This is the most confusing one: you open the address and it works fine, because you are opening it directly. Visitors to your page see nothing.

All three are quiet. There is no email, no warning, and your own browser may keep showing the cached image for weeks after everyone else stopped seeing it.

The three checks

Two minutes before relying on a host.

Load it from somewhere else. Put the image address in a plain test page on a different site and open it. If it fails, hotlinking is blocked and the host is unusable for this.

Read the address. A long random token, or a parameter that looks like an expiry time, means the address is temporary by design. It will stop working, and the only question is when.

Read the terms about inactivity. If deletion after a period of no views is mentioned, believe it.

Free host Images with the page
Expires Often No
Hotlink blocked Sometimes No
Address changes Sometimes No
Costs Nothing Storage
One thing to maintain No Yes

Keep small images in the page

A logo, an icon, a small diagram can be encoded directly into the file.

Nothing external. Nothing to expire, nothing to block, nothing to reorganise. The page is complete on its own and behaves identically wherever it is opened, including offline.

The cost is 33% extra size for the encoded data, which is nothing for a small image and unacceptable for a photograph.

Keep photographs with the page

For anything larger, put the images in the same place the page is served from.

One thing to maintain rather than two. No third party to depend on. And the images move with the page if it ever moves.

Serve them at the size they are displayed, and load the ones below the fold only as the reader reaches them. That matters more for page speed than the choice of host does.

A test page on a different domain loading the same image address, confirming hotlinking works.
A test page on a different domain loading the same image address, confirming hotlinking works.

When free hosting is fine

Short-lived things. A forum post, a bug report, a screenshot in a conversation, anything where a broken image in a year costs nothing.

That is a real category and a free host is a reasonable answer for it.

The mistake is using the same approach for a page you expect to still be working, unattended, in two years. Those are different requirements and they deserve different answers.

If this is near what you are doing, Image hosting for links and Self-contained HTML file: one file that works anywhere cover the cases on either side. Hosting a web page from a drive is also close.

Put it at an address

Test from another site, look for anything temporary in the address, read the inactivity policy, encode small images into the page, and keep photographs where the page is.

Then the page still looks right when nobody has checked it for a year.

Questions people ask

Why do hosted images vanish?

Free hosts commonly delete images that have not been viewed for a while, reorganise their addresses, or start blocking requests from other sites. None of those produce a warning to the person who linked to them.

What is hotlink blocking?

The host refusing to serve an image when the request comes from another site. It is confusing to diagnose because the address still works when you open it directly, and only visitors see the broken image.

Is a free host ever fine?

For something short-lived, a forum post, a temporary reference, yes. For anything you expect to be working in a year, the risk is real and it materialises silently.

What is the alternative?

Put images with the page, either in the same place it is served from or encoded into the file for small ones. Nothing external can then break.

How do I test a host before trusting it?

Load the image from a different site, look for anything temporary in the address, and read what they say about inactive images. Those three checks catch most of it.

Keep reading