PlaceBear API
Free placeholder image service with no key: width and height in the path returns a bear photograph at that exact size, with greyscale and colour-shift options. Tested example included.
Endpoint tested and returned HTTP 200 on 2026-08-21
What is the PlaceBear API?
PlaceBear serves placeholder photographs of bears at any dimensions you request. The width and height go in the path and the JPEG comes back directly, with optional path segments for greyscale and colour-tinted variants.
Placeholder services that return real photographs occupy a useful middle ground between a grey box, which tells you nothing about how a design will actually look, and real assets, which you do not have yet. PlaceBear does the simplest possible version of that: two numbers in a path, one bear.
The variant paths are what make it slightly more than a novelty. Prefixing with `/g/` returns the same image in greyscale, which is the quickest way to check that a layout still reads without colour carrying the contrast. There are also colour-shifted variants for testing how a design copes with unexpectedly saturated imagery. Because it is a plain image URL there is no JSON to parse and nothing to authenticate, but equally there is no CORS header, so canvas pixel access requires a proxy.
Quick facts
- Base URL
https://placebear.com- Authentication
- No API key, no account and no query parameters. Everything lives in the path.
- Rate limit
- No published limit. Images are cacheable per size.
- Pricing
- Free.
- CORS
- Not enabled — call it from your server
- Official docs
- Read the docs
How to use the PlaceBear API
Every request below was executed against the live API on 2026-08-21, and the response shown is the real body it returned — not an illustration.
1. Fetch a 200x300 bear placeholder
GET https://placebear.com/200/300
curl 'https://placebear.com/200/300'const res = await fetch("https://placebear.com/200/300");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);import requests
res = requests.get("https://placebear.com/200/300", timeout=20)
res.raise_for_status()
print(res.json())# This endpoint returns image/jpeg, not JSON.
# The response body is the image itself, so it can be used directly as an
# <img src="..."> or saved to a file — there is nothing to parse.
#
# Verified: HTTP 200, Content-Type: image/jpegParameters
| Parameter | Type | Required | Description |
|---|---|---|---|
width | path | Required | Requested width in pixels. 200 |
height | path | Required | Requested height in pixels. 300 |
/g/ | path | Optional | Prefix segment returning the greyscale version of the same image. |
Response fields
(body)image/jpeg- The photograph itself. There is nothing to parse — use the URL as an `img` src directly.
Content-Typeheader- `image/jpeg`. The service crops and scales to whatever dimensions you asked for.
What you can build with the PlaceBear API
- Populate a wireframe with real photography rather than grey blocks
- Check a layout in greyscale to verify contrast without colour
- Test responsive image behaviour across many aspect ratios
- Provide varied stand-in imagery for a design review
Common errors and how to fix them
Cross-origin fetch blocked
No Access-Control-Allow-Origin header is sent.
Fix: Displaying in an `img` tag is unaffected. Reading bytes or drawing to a canvas needs a proxy.
Distorted crop at extreme ratios
The service crops to fit whatever you request.
Fix: Very long or very tall ratios will crop the subject oddly. Keep requests near photographic proportions.
Image did not change
The same dimensions can map to the same cached image.
Fix: Vary the requested size slightly, or use the greyscale prefix, if you need visible variety on one page.
PlaceBear API — frequently asked questions
Is PlaceBear free?
Yes, free with no key, no account and no attribution requirement for placeholder use.
How do I get a greyscale image?
Prefix the path with `/g/`, as in `/g/200/300`. It returns the same photograph desaturated, which is a quick way to check a layout's contrast.
Can I use it in production?
It is intended for mockups and prototypes. The photographs are of unclear provenance and there is no uptime commitment, so bundle your own assets before shipping.
Are there other options?
Only path segments — greyscale and a few colour-shifted variants. There are no query parameters and no format selection.
Tools that pair with this API
Placeholder Image Generator
Generate placeholder images at any size online — solid, gradient or checkerboard with the dimensions as text. Download PNG or copy a data URI for markup.
Bulk Image Resizer
Resize up to 30 images at once by width, height, percentage or exact dimensions. Batch photo resizing that runs entirely in your browser.
Image Cropper
Crop images online to an exact rectangle with pixel-precise x, y, width and height inputs or aspect-ratio presets. Free, private and browser-based.
PlaceBear is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-21; always check the official documentation before relying on this API in production, as terms and limits can change.