BYTETOOLS

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.

No API key requiredHTTPSFree tier

Endpoint tested and returned HTTP 200 on 21 Aug 2026

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 21 Aug 2026, 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
curl 'https://placebear.com/200/300'
JavaScript (fetch)
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);
Python (requests)
import requests

res = requests.get("https://placebear.com/200/300", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200
# 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/jpeg

Parameters

ParameterTypeRequiredDescription
widthpathRequiredRequested width in pixels. 200
heightpathRequiredRequested height in pixels. 300
/g/pathOptionalPrefix 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

Alternatives to PlaceBear API

If PlaceBear does not fit, these animal apis cover similar ground. Every one was called before publishing, and each links to its own reference page with a working curl command and the response it returned.

APIWhat it doesAuthCORSLast verified
Cat FactsFree cat facts API with no key. Random feline facts as JSON, with pagination and length filtering. CORS enabled. Tested curl example and live response.No keyYes19 Aug 2026
Dog CEOFree dog image API with no key: 20,000+ photos across 100+ breeds and sub-breeds, random or filtered. CORS enabled. Tested curl example and live JSON.No keyYes19 Aug 2026
TheCatAPIFree cat image API with breed data, filtering and search. Works without a key for basic use; free key unlocks more. Tested curl example and live JSON.No keyYes19 Aug 2026
RandomFoxFree fox image API with no key. Returns a random fox photo URL as JSON. CORS enabled, minimal payload. Tested curl example and live response included.No keyYes19 Aug 2026
random.dogFree random dog API with no key: returns a URL to a photo, GIF or video with its file size in bytes, so you can filter before downloading. Tested example included.No keyYes21 Aug 2026
Random-d.ukFree random duck picture API with no key: JPG, PNG and GIF ducks, plus HTTP-status duck images. Tiny two-field JSON response. Tested example included.No keyNo21 Aug 2026
All Animal APIs

PlaceBear is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 21 Aug 2026; always check the official documentation before relying on this API in production, as terms and limits can change.