BYTETOOLS

Icons8 Image URLs API

Free icon delivery by URL with no key: choose a style, size and icon name in the path and get a rendered PNG or SVG straight back. Tested example included.

No API key requiredCORS enabledHTTPSFree tier

Endpoint tested and returned HTTP 200 on 2026-08-21

What is the Icons8 Image URLs API?

Icons8 serves icons as images from a predictable URL made of style, size and icon name, with no API key. The response is the rendered icon in the requested format, ready to use as an image source.

Icon libraries usually mean a build step — install a package, configure a sprite, tree-shake the unused ones. This is the opposite approach: the URL is the entire integration. `/{style}/{size}/{name}.png` returns that icon at that size, with nothing installed and nothing bundled, which suits prototypes, emails and any context where a build step is not available.

The style segment is the part that carries the most meaning: `color` for full-colour icons, `fluency` for Microsoft's Fluent style, `material-outlined`, `ios-filled` and a long list besides, each a complete visual family. Sticking to one style is what makes an interface look coherent. The important caveat is licensing rather than technical: Icons8's free tier requires a visible link back to icons8.com, and their paid plans remove that condition. Requesting `.svg` instead of `.png` returns a vector you can recolour with CSS.

Quick facts

Base URL
https://img.icons8.com
Authentication
No API key for the image URLs. The free tier requires visible attribution linking to icons8.com; paid plans remove that requirement.
Rate limit
No published limit. Icons are CDN-cached and immutable per URL.
Pricing
Free with attribution. Paid plans remove the link-back requirement and add formats and sizes.
CORS
Enabled — callable directly from browser JavaScript
Official docs
Read the docs

How to use the Icons8 Image URLs 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 an icon as a PNG

GET https://img.icons8.com/color/48/home.png

curl
curl 'https://img.icons8.com/color/48/home.png'
JavaScript (fetch)
const res = await fetch("https://img.icons8.com/color/48/home.png");
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://img.icons8.com/color/48/home.png", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200
# This endpoint returns image/png, 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/png

Parameters

ParameterTypeRequiredDescription
stylepathRequiredVisual family — `color`, `fluency`, `material-outlined`, `ios-filled`, `office` and many more. color
sizepathRequiredPixel size. Common values are 24, 48, 96 and 240. 48
name.formatpathRequiredIcon name and extension. `.png` for raster, `.svg` for vector. home.png

Response fields

(body)image/png
The rendered icon. Requesting a `.svg` extension returns `image/svg+xml` instead, which can be recoloured with CSS.
Content-Typeheader
Reflects the extension you requested.
(CORS)header
A permissive Access-Control-Allow-Origin header is sent, so canvas access works.
(missing icon)behaviour
An unknown name or unavailable style returns an error rather than a fallback icon.

What you can build with the Icons8 Image URLs API

  • Drop icons into a prototype with no build step
  • Use icons in HTML email, where icon fonts and sprites do not work
  • Serve icons into a no-code or low-code tool that only accepts URLs
  • Compare visual styles quickly by swapping one path segment

Common errors and how to fix them

404 or an error image

The icon name or style does not exist.

Fix: Search icons8.com for the exact slug. Names are lowercase and hyphenated, and not every icon exists in every style.

Icons look inconsistent

Styles were mixed across the interface.

Fix: Pick one style family and keep the segment constant. That single choice does most of the work in making an icon set look designed.

Attribution complaint

The free tier requires a visible link to icons8.com.

Fix: Add the link, or move to a paid plan. This is a licence condition, not a technical one.

Icon is blurry

A small raster size was scaled up.

Fix: Request a larger `size`, or use the `.svg` extension and let it scale.

Icons8 Image URLs API — frequently asked questions

Do I need an API key for Icons8 icon URLs?

No. The image URLs work without any key. What the free tier does require is a visible attribution link to icons8.com.

How do I choose a style?

The style is a path segment — `color`, `fluency`, `material-outlined`, `ios-filled` and others. Keeping it constant across your interface is what makes the icons look like a set.

Can I get vectors instead of PNGs?

Yes. Request the `.svg` extension instead of `.png` and you get a vector you can scale and recolour with CSS.

Is attribution really required?

Yes on the free tier — a visible link back to icons8.com. Their paid plans remove the requirement, and it is a licence condition rather than something enforced technically.

Tools that pair with this API

Icons8 Image URLs 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.