Every URL is an image.
Logos for stock tickers & crypto, preview thumbnails for 30+ stock-media sites, and on-the-fly text-to-image rendering — served from a global edge network. One year of cache, keyed by URL, never a broken image.
No match — try the URL anyway, missing names return a labeled placeholder.
Stock & fund logos
Circle logos for stock tickers and funds — ideal for watchlists, portfolio dashboards, and price tickers. Served from edge servers close to your visitors.
/stock/{symbol}.svg
- Company slugs follow TradingView naming, like
appleordragon-capital. - Missing symbols fall back to a custom uploaded icon, then a labeled placeholder — never a broken image.
Crypto icons
Circle icons for cryptocurrencies, addressed by plain ticker symbol — for portfolio trackers, price tickers, and exchange dashboards.
/crypto/{symbol}.svg
- Plain lowercase ticker symbols like
btc,eth,sol— the top ~500 coins by market cap are preloaded. - Missing symbols fall back to a custom uploaded icon, then a labeled placeholder — never a broken image.
- Served as SVG (a few as PNG), cached at the edge for one year.
Brand logos
SVG logos for thousands of tech and consumer brands, addressed by plain brand name — for integration pages, tech-stack lists, payment badges, and dashboards.
/brand-logo/{name}.svg
/brand-logo/google.svg/brand-logo/nike.svg/brand-logo/slack.svg/brand-logo/openai.svg/brand-logo/mastercard.svg- Names are lowercase brand slugs like
google,nike,openai— uppercase requests are normalized automatically. - Full-color logos where available, official brand-color icons otherwise.
- Missing names fall back to a custom uploaded icon, then a labeled placeholder — never a broken image.
- Served as
image/svg+xml, cached at the edge for one year.
Stock image thumbnails
Preview images for stock-media assets, keyed by source site and asset id. The optional -{size} suffix resizes to that width.
/{site}/{id}.jpg
/{site}/{id}-{size}.jpg
Example: /shutterstock/2148156765-600.jpg — Shutterstock asset 2148156765 at width 600.
Supported sites
shutterstockvshutterfreepikvfreepik
adobestockistockphotodepositphotosdreamstime
123rfalamyrawpixelenvato
vecteezyflaticoniconscoutpngtree
lovepikmotionarraystoryblockscreativefabrica
artgridartlist_footageepidemicsounddesigni
designbrbaixardesigncraftworkmockupcloud
mrmockupyellowimagesfootagecrateui8
pixedenuplabspixelbuddha
- Audio sources return a waveform placeholder image.
- Unknown or unavailable assets return a labeled placeholder — never a broken image.
- Successful renders are cached at the edge for one year, keyed by full URL.
Text to image
Renders an SVG image from arbitrary text — handy for placeholders, Open Graph fallbacks, and quick banners.
Try it
Usage
/bytext?text=<your text>&w=600&h=400&bg=cccccc&fg=333333&size=48
Parameters
| Parameter | Default | Description |
|---|---|---|
text | (required) | Text content. URL-encoded. Use %0A for line breaks. |
w | 600 | Width in pixels (1–4000). |
h | 400 | Height in pixels (1–4000). |
bg | cccccc | Background color — hex 3/6/8 chars, with or without #. |
fg | 333333 | Text color — hex. |
size | auto | Font size in px. Leave blank to auto-fit to the canvas. |
Examples
/bytext?text=Hello%20World?text=Custom%20size&w=400&h=200&bg=222&fg=fff&size=56?text=Line%201%0ALine%202%0ALine%203 (multi-line)Notes
- Returns
image/svg+xml— works with<img>,background-image, etc. - Cached at the edge for one year, keyed by full URL.
- Font is
system-ui— rendered with the viewer's system font.