> ## Documentation Index
> Fetch the complete documentation index at: https://www.logo.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Migrating from Brandfetch to Logo.dev

> Move Brandfetch Logo CDN URLs to img.logo.dev and Brand API calls to the Describe or Brand API. Two swaps, with every common parameter mapped side by side.

Switching from Brandfetch to Logo.dev is two swaps: point logo image URLs at `img.logo.dev` instead of the Brandfetch Logo CDN, and send Brand API calls to the [Describe](/describe/introduction) or [Brand](/brand/introduction) API. For a feature-by-feature view, see [Logo.dev vs Brandfetch](/brandfetch).

## Migrate logo images

Swap the host and credential, then rename a few parameters. Brandfetch's Logo CDN and Logo.dev's image API are both URL-based, so that's the whole change.

```text Brandfetch Logo CDN theme={null}
https://cdn.brandfetch.io/domain/nike.com/w/128/h/128?c=CLIENT_ID
```

```text Logo.dev Logo API theme={null}
https://img.logo.dev/nike.com?token=LOGO_DEV_PUBLISHABLE_KEY&size=128&format=png
```

Get your [publishable key](/platform/api-keys) from the [dashboard](https://www.logo.dev/dashboard) and pass it as `token`. Add `format=png` or `format=webp` explicitly: Logo.dev's default is `jpg`, which has no transparency, unlike Brandfetch's `.png`/`.webp` extensions.

<Note>
  Brandfetch's `type` segment (`/type/icon`, `/type/symbol`, `/type/logo`)
  selects different asset shapes. Logo.dev's image endpoint returns one
  canonical logo per domain; for the wide lockup Brandfetch calls its `logo`
  type, use the Brand API's [`brandmark`](/brand/introduction) field (Pro and
  Enterprise) instead.
</Note>

The common parameters map directly:

| Brandfetch                                      | Logo.dev                                                                                                     |
| ----------------------------------------------- | ------------------------------------------------------------------------------------------------------------ |
| `/domain/nike.com`                              | `/nike.com` (drop the `domain/` prefix)                                                                      |
| `/ticker/NKE`, `/isin/:isin`, `/crypto/:symbol` | Same paths: [`/ticker`](/logo-images/ticker), [`/isin`](/logo-images/isin), [`/crypto`](/logo-images/crypto) |
| `?c=CLIENT_ID`                                  | `?token=LOGO_DEV_PUBLISHABLE_KEY`                                                                            |
| `/w/128/h/128`                                  | `size=128`, or `width` and `height` (max 800)                                                                |
| `/theme/dark`                                   | `theme=dark` (the meaning changes, see below)                                                                |
| `.png` / `.webp` extension                      | `format=png` / `format=webp`                                                                                 |
| `/fallback/lettermark`                          | `fallback=monogram` (the default)                                                                            |
| `/fallback/404`                                 | `fallback=404`                                                                                               |

One parameter changes meaning in the swap. Brandfetch's `/theme/...` selects a light or dark logo variant; Logo.dev's `theme` names the background you render on, so `theme=dark` keeps logos visible on dark backgrounds. Pick the value for your background instead of carrying the Brandfetch value over.

See the [Logo API parameters](/logo-images/get#parameters) for the full list.

## Migrate brand data

Brandfetch's Brand API returns one JSON profile per domain. On Logo.dev, pick between two endpoints by depth and plan:

* [Describe API](/describe/introduction), on any paid plan, returns core company data: name, description, brand colors, socials, and the logo.
* [Brand API](/brand/introduction), on Pro and Enterprise, adds the brandmark and social banner images.

Both take your [secret key](/platform/api-keys) (`sk_…`) in the `Authorization` header, where Brandfetch takes a bearer token:

```bash Brandfetch Brand API theme={null}
curl --header "Authorization: Bearer BRANDFETCH_API_KEY" "https://api.brandfetch.io/v2/brands/domain/nike.com"
```

```bash Logo.dev Brand API theme={null}
curl --header "Authorization: Bearer LOGO_DEV_SECRET_KEY" "https://api.logo.dev/brand/nike.com"
```

<Note>
  Logo.dev's brand profile centers on visual assets and core company data: logo,
  brandmark, social banners, colors, description, and socials. If you depend on
  Brandfetch fields like fonts, company size, or industry, check the
  [Describe](/describe/introduction) and [Brand](/brand/introduction) responses
  against your needs before switching that call.
</Note>

If you used Brandfetch to resolve a ticker, ISIN, or crypto symbol to a logo image, the image [Logo API](/logo-images/introduction) covers the same lookups directly:

```bash theme={null}
curl "https://img.logo.dev/ticker/NKE?token=LOGO_DEV_PUBLISHABLE_KEY"
```

## Attribution

On the free tier, commercial use requires [attribution](/platform/attribution) wherever you display logos; personal projects don't. Any paid plan removes it.

<Note>
  Need help migrating or want to run a volume test first? Email
  [sales@logo.dev](mailto:sales@logo.dev).
</Note>
