Lorem Picsum
Placeholder image API — construct a URL with dimensions and get a photo at exactly that size. Seeded URLs return the same image every time, perfect for stable test fixtures.
🟢 Online · 950 ms
89.17%
Unlimited (fair use), no key, no credit card
No key required
Free alternatives (live ranking)
- Free Dictionary API — 🟢 Online · Unlimited (fair use), no key, no credit card
- ipify — 🟢 Online · Unlimited, no key, no credit card
- DiceBear Avatars — 🟢 Online · Unlimited (fair use), no key, no credit card
Compare Lorem Picsum with…
- Lorem Picsum vs Free Dictionary API — Unlimited (fair use), no key, no credit card
- Lorem Picsum vs ipify — Unlimited, no key, no credit card
- Lorem Picsum vs DiceBear Avatars — Unlimited (fair use), no key, no credit card
Frequently Asked Questions
Does Lorem Picsum require an API key?
No, Lorem Picsum is freely accessible without registration or an API key.
What is Lorem Picsum's free tier?
Unlimited (fair use), no key, no credit card
Is Lorem Picsum currently online?
We check Lorem Picsum every hour. The current status is shown at the top of this page. You can also see the 30-day uptime history in the chart above.
Implementation notes
When to use Lorem Picsum
Lorem Picsum is 'lorem ipsum for photos' — construct a URL with dimensions and get a real photograph at exactly that size. `/200/300` returns a random 200×300 photo; `/seed/anything/200/300` returns the *same* photo every time for that seed; `/id/237/200/300` pins a specific image. Use it for placeholder images during development, stable screenshots in visual-regression tests (seeded URLs!), design mockups, and demo content that doesn't look like gray boxes.
Common pitfalls
- Unseeded URLs return a different random image on every request — including every page reload. If your layout jumps because image aspect ratios keep changing, switch to seeded or ID-pinned URLs.
- The random endpoints respond with a 302 redirect to the actual image URL. Most img tags and HTTP clients follow it transparently, but strict CSP configurations (img-src pinned to picsum.photos only) will block the redirected fastly.picsum.photos host — allow both.
- Grayscale (`?grayscale`) and blur (`?blur=2`) are query params you can combine, but blur values above 10 are clamped silently.
- It's a placeholder service, not a production CDN. Replace Picsum URLs before launch — a real product serving placeholder photos from a free third-party service is one hiccup away from broken images on your homepage.
Quick start (javascript)
// Stable placeholder per product ID — same image across reloads and environments
const placeholder = (id) => `https://picsum.photos/seed/product-${id}/400/300`; From our monitoring
Picsum runs on Fastly's CDN and has been effectively flawless in our monitoring — sub-200ms globally, no recorded outages. The maintainer has kept it free for 10+ years. Combined with deterministic seeds, it's the rare placeholder service you can safely leave in automated test fixtures.
Embed this badge
Add a live status badge to your README, docs, or website.
Markdown
[](https://freeapi.watch/picsum) HTML
<a href="https://freeapi.watch/picsum"><img src="https://freeapi-builder.a10ayassine.workers.dev/badge/picsum.svg" alt="Lorem Picsum Status"/></a>