19 Sep 2022, updated 23 May 2026
Clearbit's free logo API (logo.clearbit.com/{domain}) was retired after the HubSpot acquisition. The drop-in replacement I now use is logo.dev.

How it works
Sign up at logo.dev to get a free publishable token (pk_...). Then build the URL:
<img src="https://img.logo.dev/{domain}?token={your_token}" />
Examples
Basic usage:
<img src="https://img.logo.dev/spotify.com?token=pk_X" />
Resize with the size parameter (px):
<img src="https://img.logo.dev/spotify.com?token=pk_X&size=300" />
Force a format with format (png, jpg, webp):
<img src="https://img.logo.dev/spotify.com?token=pk_X&format=png&size=128" />
Force retina output:
<img src="https://img.logo.dev/spotify.com?token=pk_X&retina=true" />
Greyscale via greyscale=true:
<img src="https://img.logo.dev/spotify.com?token=pk_X&greyscale=true" />
Fallback behaviour
When the domain has no logo on record, logo.dev returns a monogram placeholder by default. Override with fallback=transparent for a blank image, or fallback=404 to get a real 404 so your code can substitute its own placeholder.
<img src="https://img.logo.dev/unknown-company.example?token=pk_X&fallback=404" />
Python helper
How I use it in write_note.py:
url = f"https://img.logo.dev/{domain}?token={token}&format=png&size=128"
curl_cmd = f'curl -s -o "{logo_path}" "{url}"'
subprocess.run(curl_cmd, shell=True)
Attribution
Free tier requires attribution. Add somewhere on the page:
<a href="https://logo.dev">Logos provided by Logo.dev</a>