poster, fanart, episode, and avatar fields. You build the final URL by combining a domain prefix, a category prefix, the image path, a size suffix, and a file extension.
We strongly recommend serving images through wsrv.nl, a free image proxy that caches, resizes, and converts on the fly. This minimizes load on Simkl’s servers and gives you free image transformations.
All examples below append &q=90 to the wsrv URL — this matches origin image quality. Without it, wsrv’s default &q=80 re-encodes images at noticeably smaller filesize and lower quality. Setting &q= above 90 is rarely useful — sizes balloon past origin without visible quality gain.
Anatomy of a URL
| Part | Example | Notes |
|---|---|---|
| Proxy + domain | https://wsrv.nl/?url=https://simkl.in | Always start with this. |
| Category | /posters/ | One of /posters/, /fanart/, /episodes/, /avatars/. |
| Image path | 74/74415673dcdc9cdd | The value from the API field (poster, fanart, etc.). |
| Size suffix | _w | Determines pixel size — see each section below. |
| Extension | .webp | Always .webp for posters, episodes, and every fanart size except _d. Two exceptions: fanart _d is .jpg only (details), avatars are .jpg only (details). |
| Quality | &q=90 | Quality parameter for the wsrv proxy. &q=90 matches origin quality (default &q=80 reduces quality and filesize). Setting &q= above 90 is rarely useful — sizes balloon past origin without visible quality gain. |
Code samples
Each tab covers a different real-world scenario. All samples handle missing/null paths by falling back to the wsrv-proxied placeholders documented in Fallback when images are missing.- Basic builder
- Responsive HTML
- React
- Blur-up loading
- iOS — SDWebImage / Kingfisher
- Android — Coil
Single helper covering all four kinds, with null-safe fallback for posters.
Posters
Six sizes, ranging from cinematic landscape (_w) down to a 40-pixel sliver (_s).
- Previews
- Reference table
Fanart
Wide background art — the cinematic still you typically use behind the title on a detail screen.Episodes
Avatars
- Previews
- Reference table
Avatars are JPG-only and served directly from
simkl.in (no wsrv.nl proxy needed for these — they’re already small).Fallback when images are missing
When aposter, fanart, or episode field is null (or the path is empty), use these built-in placeholders. They live at the root of simkl.in and are served through wsrv.nl just like the other images:
| URL | Use for | File size | Example |
|---|---|---|---|
https://wsrv.nl/?url=https://simkl.in/poster_no_pic.png | Default — full-size missing-poster | ~25 KB | View |
https://wsrv.nl/?url=https://simkl.in/poster_no_pic_c.png | Match _c posters (170 × 250) | ~9 KB | View |
https://wsrv.nl/?url=https://simkl.in/poster_no_pic_c_grey.png | Match _c with a softer grey tone | ~24 KB | View |
https://wsrv.nl/?url=https://simkl.in/poster_no_pic_s.png | Match _s posters (40 × 57) | ~1.7 KB | View |
Fanart has no dedicated placeholder. When
fanart is null, hide the fanart element rather than showing a broken/empty image — most apps render a solid color or use the poster’s blurred-up _s48 thumbnail behind a tint instead.















