Brand DNA avatar

Brand DNA

Pricing

from $1.00 / 1,000 results

Go to Apify Store
Brand DNA

Brand DNA

Extract structured brand identity from any website β€” colors, fonts, tone, positioning, and reusable marketing templates β€” using deterministic heuristics with no AI hallucinations.

Pricing

from $1.00 / 1,000 results

Rating

0.0

(0)

Developer

Hayder Al-Khalissi

Hayder Al-Khalissi

Maintained by Community

Actor stats

0

Bookmarked

15

Total users

7

Monthly active users

11 hours ago

Last modified

Share

πŸš€ Brand DNA Actor (No LLM)

Website Brand Analysis & Identity Extraction β€” Deterministic & Repeatable

Brand DNA Actor automatically analyzes any business website and builds a structured Brand DNA profile β€” visual identity, tone, positioning, and reusable marketing templates β€” using deterministic heuristics only.

No LLMs. No hallucinations. No unpredictable output.

Just repeatable brand intelligence you can plug into audits, automation, and marketing workflows.

πŸ‘‰ Extract brand signals in seconds.

πŸ” Why Use Brand DNA Actor?

Understanding a brand manually takes time:

  • visual style analysis
  • tone detection
  • positioning evaluation
  • copy signal extraction

This actor automates the entire process β€” turning website content into structured brand intelligence.

Perfect for agencies, growth teams, analysts, and automation builders.

⚑ What Happens When You Run It

For each website:

βœ… Crawl homepage + key internal pages
βœ… SPA detection with Playwright fallback (new in v2.0)
βœ… Extract colors, fonts, logo candidates
βœ… CSS variable extraction for brand colors (new in v2.0)
βœ… Detect tone and voice dimensions
βœ… Identify positioning signals
βœ… CTA extraction with weighted scoring (new in v2.0)
βœ… Multi-signal extraction: JSON-LD, NEXT_DATA, meta tags (new in v2.0)
βœ… Generate hero/tagline candidates
βœ… Build reusable CTA & ad templates
βœ… Produce a structured brand summary \

All deterministic. All repeatable.

🎯 Ideal Use Cases

  • Competitor brand analysis
  • Client onboarding audits
  • Marketing template generation
  • Website tone evaluation
  • Creative direction baselines
  • Automation pipelines (n8n / CRM workflows)
  • Brand intelligence dashboards

🧠 Key Capabilities

Visual Identity Extraction

  • Primary/secondary colors
  • Accessibility contrast signals
  • Typography detection
  • Logo candidates
  • CSS variables for brand colors

Copy & Voice Signals

  • Top keywords & phrases
  • CTA analysis with scoring
  • Tone heuristics
  • Voice dimensions

Positioning Intelligence

  • Industry guess
  • Audience signals
  • Value propositions
  • Brand attributes
  • Positioning summary

Marketing Templates

  • CTA rewrite variants
  • Social post skeletons
  • Short ad copy templates

Multi-Signal Extraction (new in v2.0)

  • JSON-LD structured data (Organization, WebSite, LocalBusiness)
  • Next.js __NEXT_DATA__ parsing
  • Nuxt data detection
  • Meta/OpenGraph tag collection

πŸ“¦ Output

Each run produces:

BrandKit dataset

Structured brand profile including:

  • Visual identity
  • Tone & positioning
  • Hero/tagline candidates
  • Contacts
  • Signals from JSON-LD, NEXT_DATA, meta tags
  • Markdown brand summary

Templates dataset

Reusable marketing building blocks.

All structured for automation.

πŸ†• New in v2.0

Hybrid Crawling (HTML-First + Fallback Rendering)

  • Fast HTML extraction by default using CheerioCrawler
  • Automatic SPA shell detection with Playwright fallback
  • Domain hit-rate tracking for adaptive rendering decisions
  • Configurable rendering timeout and selector waiting

Anti-Bot & Stability

  • Apify Proxy integration (Residential/Datacenter)
  • Adaptive concurrency (starts low, scales on success)
  • Exponential backoff for 403/429 responses
  • Request pacing to avoid rate limiting

Enhanced CTA Extraction

  • Weighted scoring based on position, class, text, and href
  • Hero/main position bonus, nav/footer penalty
  • Action verb detection and generic label filtering
  • Top-N ranked results

Multi-Signal Extraction

  • JSON-LD structured data (Organization, WebSite, LocalBusiness)
  • Next.js __NEXT_DATA__ parsing
  • Nuxt data detection
  • Meta/OpenGraph tag collection
  • CSS variable extraction for brand colors

πŸ“₯ Input Configuration

FieldTypeDefaultDescription
startUrlstringrequiredWebsite URL to analyze
maxPagesinteger8Maximum pages to crawl (1-50)
respectRobotsTxtbooleantrueRespect robots.txt rules
timeoutSecsinteger120Maximum crawl duration
includeBlogbooleantrueInclude blog pages

Rendering Options

FieldTypeDefaultDescription
useRenderingFallbackbooleantrueEnable Playwright for SPA shells
renderingTimeoutMsinteger1200Rendering timeout in ms
renderingWaitForSelectorsstring"main, h1, button"Selectors to wait for

Proxy Options

FieldTypeDefaultDescription
useProxybooleantrueEnable Apify Proxy
proxyGroupstring"RESIDENTIAL"Proxy group (RESIDENTIAL/DATACENTER)

Concurrency Options

FieldTypeDefaultDescription
maxConcurrencyinteger2Maximum concurrent requests (1-8)
adaptiveConcurrencybooleantrueAuto-adjust based on success
requestDelayMsinteger0Delay between requests

Retry Options

FieldTypeDefaultDescription
maxRequestRetriesinteger3Max retries per request

Path filtering (new)

FieldTypeDefaultDescription
includePathsstring[]β€”Optional path allowlist (wildcards, e.g. /products/*). Start URL is always included.
excludePathsstring[]β€”Optional path denylist (wildcards, e.g. /blog/*, /legal/*).

Multi-language & translation

FieldTypeDefaultDescription
languagestring"auto"Content language: auto (detect), en, de, es, fr, it, pt
useLanguageDetectorbooleantrueWhen language is Auto, use Apify Language Detector for ML-based detection
useTranslationbooleanfalseTranslate page content to a target language before extraction
translateToLanguagestring"en"Target language when translation is enabled
translationActorIdstringβ€”Apify actor ID for translation (e.g. tkapler/deepl-actor) when Use translation is enabled
translationBatchModebooleantrueSend all page texts in one batch to the translation actor; falls back to sequential mode if unsupported

Output extras (new)

FieldTypeDefaultDescription
outputPagesbooleanfalsePush one dataset item per crawled page with page-level extracted fields.
outputDiffbooleanfalseCompare current brandKit with previous cached snapshot and output a delta item.

Webhook options (new)

FieldTypeDefaultDescription
webhook.urlstringβ€”Webhook destination URL (preferred over callbackUrl).
webhook.eventsstring[]["completed","failed"]Events to send: started, completed, failed.
webhook.retriesinteger1Retry attempts on network error / 5xx.
webhook.retryDelayMsinteger2000Delay between retries.
webhook.timeoutMsinteger10000Request timeout per attempt.
webhook.secretstringβ€”Optional HMAC signing secret (x-branddna-signature: sha256=...).
webhook.headersobjectβ€”Optional custom headers map.
callbackUrlstringβ€”Legacy fallback URL used when webhook.url is not set.

Supported locales: English (en), German (de), Spanish (es), French (fr), Italian (it), and Portuguese (pt). Extraction uses locale-specific stopwords, tone markers, industry/audience keywords, CTA maps, and templates. Add more languages by adding a src/data/xx.js locale file and registering it in src/data/index.js.

Translation actor contract

When Use translation is enabled, Brand DNA calls your translation actor to translate page content before extraction. The actor must accept:

  • Single-text input: text (string), targetLanguage (e.g. en, de), and optionally sourceLanguage (e.g. auto).
  • Batch input (optional): texts (array of strings), targetLanguage. If supported, Brand DNA will send one batch per run instead of one call per page.

The actor’s default dataset should return items where each item has a translated string in one of: translatedText, text, or translation. For batch mode, return either one item per text in the same order, or one item with a translations array.

Known-compatible actors include DeepL (AI translation). If batch mode fails (e.g. actor does not support texts), Brand DNA falls back to sequential single-text calls.

Integrations: n8n, Make, Slack/Teams

n8n & Make: Use the Apify node (n8n) or Apify module (Make) to run Brand DNA. Input: startUrl or startUrls (array, max 20), plus optional mode, maxPages, language, outputFormat, exportFormats, webhook, etc. Output: dataset items with type: brandKit, type: templates, type: page, type: delta, type: comparison, or type: brandDNA (single item); each item includes startUrl when using multiple URLs.

Webhook: Set webhook.url to receive signed JSON events (started, completed, failed). Base payload includes { event, timestamp, runId, datasetId, status, startUrls, resultsCount, errorCount }. Configure retries/timeout/headers with webhook.retries, webhook.retryDelayMs, webhook.timeoutMs, and webhook.headers. If webhook.secret is set, the actor adds x-branddna-signature (HMAC-SHA256). callbackUrl remains supported as a fallback for backward compatibility.

πŸ”„ Demo Workflow

Run β†’ extract brand profile β†’ feed into workflow:

Brand DNA Actor
↓
n8n / automation tool
↓
brand audit / template generator / CRM enrichment

Instant brand intelligence β€” no manual review required.

πŸŽ₯ Video Walkthrough

Watch the demo here: https://youtu.be/Eaxrf_17DXM

πŸ”’ Deterministic by Design

Unlike AI-driven analysis:

βœ” repeatable outputs βœ” explainable heuristics βœ” no hallucinations βœ” stable automation pipelines

Perfect for production workflows.

🌐 SEO Keywords Covered

brand analysis tool β€’ website brand extractor β€’ brand identity scraper β€’ marketing template generator β€’ brand audit automation β€’ deterministic brand intelligence

πŸ›  Integration Ready

Works seamlessly with:

  • Apify scheduling
  • n8n workflows (docs/n8n-integration.md, n8n-workflow-brand-dna.json)
  • OpenClaw (docs/openclaw-integration.md, skills/brand-dna/SKILL.md)
  • CRM pipelines
  • Reporting dashboards

⭐ Rate This Actor

If this actor helped you, please rate it on Apify. Your rating helps others discover it and supports future improvements.

⚠ Limitations

  • HTML-based crawling (no SPA rendering) Now with SPA support!
  • English-centric heuristics Multi-language (en, de) with optional auto-detection and translation
  • Rule-based approximations

Designed for structured automation β€” not creative AI writing.

🎯 Final Value

Instead of manually dissecting websites…

You get:

πŸ‘‰ automated brand intelligence
πŸ‘‰ reusable marketing assets
πŸ‘‰ structured identity signals
πŸ‘‰ repeatable analysis \

All in seconds.