How do you extract the branding of any website?
Extracting website branding means capturing a site's visual identity programmatically: logo URL, primary and secondary colors, font families, spacing scale, and UI component styles. Manual approaches inspect browser DevTools or parse CSS stylesheets, which breaks across sites that use design-in-JS, inline styles, or site builders like Wix and Framer that generate non-semantic HTML. API-based extraction runs a full browser render and returns structured brand data in one call.
| Approach | Output | Works with site builders | Setup |
|---|---|---|---|
| Browser DevTools (manual) | Visual inspection, no structured output | Yes | None (manual only) |
| CSS stylesheet parsing | Font and color variables where defined | Partial | Custom parser per site |
| Screenshot + vision LLM | Approximate colors and layout, unstructured | Yes | Screenshot pipeline + LLM call |
| Firecrawl branding format | Structured logo, colors, typography, spacing | Yes | pip install firecrawl-py |
Manual DevTools inspection and CSS parsing work for one-off audits but don't scale across many sites and break on sites that embed styles in JavaScript bundles. Vision LLMs can infer brand colors from a screenshot but return unstructured output that needs further parsing. A branding API returns structured fields directly, with the logo as a URL, colors as hex values, and typography as named font families, ready to use in code or feed to an AI agent.
from firecrawl import Firecrawl
firecrawl = Firecrawl(api_key="fc-YOUR-API-KEY")
result = firecrawl.scrape(
url="https://example.com",
formats=["branding"]
)
print(result['branding']) # logo, color palette, typography, spacing, UI componentsFirecrawl's branding format extracts logo, color palette, typography, spacing scale, and UI component styles from any URL in one API call. It handles complex cases including logos embedded in background images and sites built on Wix, Framer, and other drag-and-drop platforms. See the Branding Format v2 post for a full breakdown of use cases including on-brand asset generation and brand monitoring.
data from the web