Quikturnv1.0

Migration Guide

Complete migration guide from Clearbit Logo API and Logo.dev to Quikturn. Simple URL replacement with enhanced features, transparent pricing, and enterprise-grade reliability.

Clearbit Logo API is shutting down December 8, 2025. If your app uses logo.clearbit.com, it will stop working. Quikturn provides a seamless migration path with enhanced features.

This guide helps you migrate from Clearbit Logo API or Logo.dev to Quikturn Logo API. Most migrations take just a few minutes—simply update your base URL and add your Quikturn publishable key.

Why Quikturn?

Edge-Based CDN

Global edge network ensures fast logo delivery worldwide with automatic caching.

Drop-In Replacement

Compatible parameters mean minimal code changes—just update the URL.

Zero SDKs Required

Simple URL-based API works in any language, framework, or platform.

Transparent Pricing

Clear, predictable pricing with a generous free tier. No surprises.

Quikturn serves millions of logo requests daily with enterprise-grade reliability. Our edge-based architecture delivers logos in milliseconds, and our API is designed for production workloads from day one.


Migrating from Clearbit

If you're currently using logo.clearbit.com, follow these steps:

Update Your Base URL

Replace the Clearbit base URL with Quikturn's logo endpoint. All your existing parameters will continue to work.

Clearbit Base URL (deprecated)

https://logo.clearbit.com/

Quikturn Base URL

https://logos.getquikturn.io/

Create an Account and Get Your Key

Sign up at the Quikturn customer portal to get your publishable key (pk_*). No credit card is required for the free tier.

Your Publishable Key Format

pk_live_xxxxxxxxxxxxxxxxxxxx

Add Authentication

Unlike Clearbit's unauthenticated endpoint, Quikturn requires a token parameter for all requests. This ensures reliable performance and usage tracking.

Authenticated URL Pattern

https://logos.getquikturn.io/:domain?token=YOUR_PUBLISHABLE_KEY

Test and Deploy

Before deploying, verify:

  • Logos display correctly for your target domains
  • No remaining references to logo.clearbit.com
  • Error handling for 404 responses works as expected

Clearbit Migration Examples

Before (Clearbit)

<img src="https://logo.clearbit.com/stripe.com" alt="Stripe logo" />

After (Quikturn)

<img
  src="https://logos.getquikturn.io/stripe.com?token=pk_live_your_key"
  alt="Stripe logo"
/>

Before (Clearbit)

function Logo({ domain }) {
  return (
    <img
      src={`https://logo.clearbit.com/${domain}`}
      alt={`${domain} logo`}
    />
  );
}

After (Quikturn)

const QUIKTURN_KEY = process.env.REACT_APP_QUIKTURN_KEY;

function Logo({ domain }) {
  return (
    <img
      src={`https://logos.getquikturn.io/${domain}?token=${QUIKTURN_KEY}`}
      alt={`${domain} logo`}
    />
  );
}

Before (Clearbit)

<template>
  <img :src="`https://logo.clearbit.com/${domain}`" :alt="`${domain} logo`" />
</template>

After (Quikturn)

<template>
  <img
    :src="`https://logos.getquikturn.io/${domain}?token=${apiKey}`"
    :alt="`${domain} logo`"
  />
</template>

<script setup>
const apiKey = import.meta.env.VITE_QUIKTURN_KEY;
defineProps(['domain']);
</script>

Before (Clearbit)

logo_url = f"https://logo.clearbit.com/{domain}"

After (Quikturn)

import os

QUIKTURN_KEY = os.getenv("QUIKTURN_API_KEY")
logo_url = f"https://logos.getquikturn.io/{domain}?token={QUIKTURN_KEY}"

Migrating from Logo.dev

If you're using Logo.dev (img.logo.dev), the migration is straightforward as both APIs share similar parameter conventions.

Update Your Base URL

Replace Logo.dev's base URL with Quikturn's endpoint.

Logo.dev Base URL

https://img.logo.dev/

Quikturn Base URL

https://logos.getquikturn.io/

Swap Your API Key

Replace your Logo.dev token with your Quikturn publishable key. The token parameter name remains the same.

Logo.dev

?token=pk_xxxxxx (Logo.dev key)

Quikturn

?token=pk_live_xxxxxx (Quikturn key)

Update Any Logo.dev-Specific Parameters

Most parameters work identically. Review the parameter mapping below for any adjustments.

Logo.dev Migration Examples

Before (Logo.dev)

<img
  src="https://img.logo.dev/nike.com?token=pk_logo_dev_key&size=128"
  alt="Nike logo"
/>

After (Quikturn)

<img
  src="https://logos.getquikturn.io/nike.com?token=pk_live_quikturn_key&size=128"
  alt="Nike logo"
/>

Before (Logo.dev)

const LOGO_DEV_KEY = 'pk_logo_dev_key';

function CompanyLogo({ domain }) {
  return (
    <img
      src={`https://img.logo.dev/${domain}?token=${LOGO_DEV_KEY}`}
      alt={`${domain} logo`}
    />
  );
}

After (Quikturn)

const QUIKTURN_KEY = process.env.REACT_APP_QUIKTURN_KEY;

function CompanyLogo({ domain }) {
  return (
    <img
      src={`https://logos.getquikturn.io/${domain}?token=${QUIKTURN_KEY}`}
      alt={`${domain} logo`}
    />
  );
}

Before (Logo.dev)

const logoUrl = `https://img.logo.dev/${domain}?token=${process.env.NEXT_PUBLIC_LOGO_DEV_KEY}`;

After (Quikturn)

const logoUrl = `https://logos.getquikturn.io/${domain}?token=${process.env.NEXT_PUBLIC_QUIKTURN_KEY}`;

Parameter Compatibility

Quikturn supports parameters from both Clearbit and Logo.dev with some enhancements:

ParameterClearbitLogo.devQuikturnNotes
tokenN/ARequiredRequiredYour publishable key (pk_*)
sizeSupportedSupportedSupportedInteger value in pixels (default: 128)
formatN/Ajpg, png, webpjpg, png, webpImage format (default: jpg)
greyscaleSupportedSupportedSupportedBoolean for B&W logos
themeN/Alight, dark, autolight, darkOptimizes for background color
fallbackN/Amonogram, 404404 onlyReturns 404 if logo not found

Parameter Examples

Control the logo dimensions:

<!-- 64px logo -->
<img src="https://logos.getquikturn.io/apple.com?token=pk_your_key&size=64" />

<!-- 256px logo -->
<img src="https://logos.getquikturn.io/apple.com?token=pk_your_key&size=256" />

Choose the image format:

<!-- PNG with transparency -->
<img src="https://logos.getquikturn.io/apple.com?token=pk_your_key&format=png" />

<!-- WebP for optimal compression -->
<img src="https://logos.getquikturn.io/apple.com?token=pk_your_key&format=webp" />

Desaturate logos for uniform appearance:

<img src="https://logos.getquikturn.io/apple.com?token=pk_your_key&greyscale=true" />

Optimize logos for your background:

<!-- For dark backgrounds -->
<img src="https://logos.getquikturn.io/apple.com?token=pk_your_key&theme=dark" />

<!-- For light backgrounds -->
<img src="https://logos.getquikturn.io/apple.com?token=pk_your_key&theme=light" />

URL Comparison Reference

Quick reference for updating your codebase:

ServiceURL Pattern
Clearbithttps://logo.clearbit.com/{domain}
Logo.devhttps://img.logo.dev/{domain}?token=pk_xxx
Quikturnhttps://logos.getquikturn.io/{domain}?token=pk_live_xxx

Find and Replace

Use these patterns to search and replace in your codebase:

# Replace Clearbit URLs
Find:    logo.clearbit.com/
Replace: logos.getquikturn.io/

# Replace Logo.dev URLs
Find:    img.logo.dev/
Replace: logos.getquikturn.io/

# Don't forget to update API keys!

After replacing URLs, search your codebase for the old domain patterns to ensure no references remain.


Attribution Requirements

The free tier requires attribution where logos are displayed. To remove attribution requirements, upgrade to any paid plan.

Required Attribution Link

<a href="https://getquikturn.io" title="Logo API">Logos by Quikturn</a>

Attribution must be:

  • On a production site
  • Publicly accessible
  • Followable by search engines (no rel="nofollow")

See Attribution for complete requirements.


Testing Your Migration

Before deploying to production:

  1. Test multiple domains — Verify logos load for your most common companies
  2. Check all sizes — Ensure logos render correctly at different dimensions
  3. Verify fallbacks — Handle 404 responses gracefully for unknown domains
  4. Monitor rate limits — Check the portal for usage statistics
  5. Remove old references — Search for logo.clearbit.com and img.logo.dev

Sample Test Script

const QUIKTURN_KEY = 'pk_live_your_key';
const testDomains = ['apple.com', 'google.com', 'microsoft.com', 'stripe.com'];

async function testMigration() {
  for (const domain of testDomains) {
    const url = `https://logos.getquikturn.io/${domain}?token=${QUIKTURN_KEY}`;
    const res = await fetch(url, { method: 'HEAD' });
    console.log(`${domain}: ${res.status} ${res.ok ? '[OK]' : '[FAIL]'}`);
  }
}

testMigration();

FAQs

Will my existing parameters still work?

Yes. Parameters like size, format, and greyscale work the same way. The main change is adding the token parameter for authentication.

Do I need to create a new account?

Yes. You'll need a Quikturn account to get your publishable key. Sign up at the customer portal—no credit card required for the free tier.

How long does migration typically take?

Most migrations complete in under an hour. The main tasks are updating base URLs and adding your API key.

Can I run both services during migration?

Yes. You can test Quikturn alongside your existing provider to verify everything works before switching completely.

What if a logo isn't available?

Quikturn returns a 404 response for unknown domains. Implement fallback handling in your application to show a placeholder or company initials.

Are there rate limits?

Yes. Each tier has defined limits. Free accounts include generous limits for development and small projects. Check Rate Limits for details.

Does Quikturn support high-DPI/Retina displays?

Yes. Request larger sizes (e.g., size=256 displayed at 128px) for sharp rendering on high-density screens.

Can I use Quikturn in commercial applications?

Yes. Quikturn can be used in both internal tools and customer-facing apps. Paid plans remove attribution requirements.

How do I get support?

Check this documentation first. For additional help, contact support through the customer portal.

What happens to Clearbit logos after December 2025?

After Clearbit shuts down, any code using logo.clearbit.com will fail. Migrate before the deadline to avoid disruption.


Next Steps

Need help with your migration? Contact support through the customer portal for personalized assistance.

On this page