Skip to content

Brand Brain – Product Build for Data & Platform Engineers

1. What is the Brand Brain?

The Brand Brain is a centralised repository of machine-readable brand knowledge that AI tools can query in real time.

It stores, connects, and serves:

  • Brand rules & policies (mustDo / mustNotDo)
  • Voice & tone guidance (verbal identity)
  • Visual & audio identity metadata + asset pointers
  • Context-specific overrides (by region, channel, archetype, segment)
  • Canonical good/bad examples for few-shot prompting

It exposes this via APIs so downstream tools (copy generators, design aids, personalisation engines) can reliably “load the brand brain” before calling an LLM.


2. Primary Use Cases

  1. LLM-powered content tools
  2. Marketing copy (CRM, social, web, ads)
  3. UX & support responses
  4. On-site merchandising / personalisation
  5. Interactive, searchable repository
  6. Brand, creative, CX and legal can browse, edit, and approve:
    • Rules, tone, tokens, examples
  7. Governance & evolution
  8. Central place to update rules and style once and have all tools pick it up
  9. Future: feed performance & feedback back into rules

3. Scope (v1)

In scope:

  • Graph representation of:
  • Brand, Context, CustomerSegment, Archetype
  • VerbalIdentityToken, VisualIdentityToken, AudioIdentityToken
  • ContentGuideline (mustDo / mustNotDo / advisory)
  • BrandExample (good/bad examples for LLMs)
  • References (URIs) to binaries:
  • Logos, palettes, templates, audio samples
  • API for:
  • Fetching a Brand+Context snapshot for LLM usage
  • Searching rules/examples/tokens
  • Basic UI for:
  • Browsing a brand’s brain
  • Editing rules & tokens
  • Managing examples

Out of scope for v1 (but designed for later):

  • Performance metrics & optimisation loop
  • Automatic rule updates from metrics
  • Full multi-brand, multi-market analytics

4. High-Level Architecture

Three main layers:

  1. Graph Layer (source of truth)
  2. Property graph DB (e.g. Neo4j / Neptune / JanusGraph)
  3. Stores entities & relationships:
    • Brands, contexts, segments, archetypes
    • Identity tokens (verbal, visual, audio)
    • Content guidelines
    • Brand examples
    • Pointers to binary assets
  4. This is where governance and linking happens.

  5. Blob / Asset Layer

  6. Object storage / DAM (S3/GCS/etc.)
  7. Stores binary assets:
    • Logos, brand decks, PDFs, creative, audio files
  8. Graph nodes hold URIs + metadata.

  9. Search & Vector Layer

  10. Full-text index over:
    • ContentGuideline, VerbalIdentityToken, BrandExample, Brand
  11. Vector index (optional v1.5+):
    • Embeddings for examples / style docs
  12. Backed by OpenSearch/ES, pgvector, or a vector DB.

5. Core Data Model Slice

This is the Brand Brain slice of the wider Brand KG.

Key Node Types

  • Brand
  • Master brand / owned / hosted / co-brand.
  • Fields: id, name, brand_type, description, tagline_default, primary_language, localized_*, metadata.

  • Context

  • Composite of brand + channel + region + segment/archetype.
  • Fields: id, name, description, metadata.
  • Linked to: Brand, GeographicRegion, CustomerSegment, Archetype.

  • CustomerSegment

  • Operational segment from CDP.
  • Fields: id, name, criteria, metadata.

  • Archetype

  • Synthetic or curated archetype (persona).
  • Fields: id, name, description, archetype_type, generation_method, feature_profile, language_codes, is_active, metadata.
  • Linked to segments, trends, need states, and (optionally) real customers.

  • VerbalIdentityToken

  • Machine-readable voice & tone.
  • Fields: id, name, tone_of_voice, style_guidelines, required_elements, approved_keywords, prohibited_keywords, example_snippets, metadata.

  • VisualIdentityToken

  • Visual system metadata.
  • Fields: id, name, primary_colors, secondary_colors, logo_refs, imagery_style, iconography, metadata.

  • AudioIdentityToken

  • Audio brand cues.
  • Fields: id, name, audio_logo_ref, music_style, voice_guidelines, metadata.

  • ContentGuideline

  • Rules & policies.
  • Fields: id, rule_type (MUST_DO, MUST_NOT_DO, ADVISORY), name, description, dimension, severity, source, metadata.

  • BrandExample

  • Canonical examples for few-shot prompts.
  • Fields: id, name, description, example_type (GOOD, BAD, REFERENCE), modality (TEXT, IMAGE, AUDIO, …), channel, language, body_text, asset_refs, labels, created_by, metadata.

  • Asset (optional, generic media)

  • Fields: id, asset_type, uri, mime_type, metadata.

Key Relationships (Simplified)

  • Brand to identity:
  • (Brand)-[:USES_VERBAL_IDENTITY]->(VerbalIdentityToken)
  • (Brand)-[:USES_VISUAL_IDENTITY]->(VisualIdentityToken)
  • (Brand)-[:USES_AUDIO_IDENTITY]->(AudioIdentityToken)

  • Brand + context:

  • (Context)-[:CONTEXT_FOR_BRAND]->(Brand)
  • (Context)-[:CONTEXT_FOR_REGION]->(GeographicRegion)
  • (Context)-[:CONTEXT_FOR_SEGMENT]->(CustomerSegment)
  • (Context)-[:CONTEXT_FOR_ARCHETYPE]->(Archetype)

  • Rules:

  • (Brand)-[:HAS_CONTENT_GUIDELINE]->(ContentGuideline)
  • (InternalCategory/GpcCategory)-[:HAS_CONTENT_GUIDELINE]->(ContentGuideline)
  • (ContentGuideline)-[:OVERRIDES_IN_CONTEXT]->(Context)

  • Examples:

  • (Brand)-[:HAS_EXAMPLE]->(BrandExample)
  • (Context)-[:USES_EXAMPLE]->(BrandExample)
  • (ContentGuideline)-[:ILLUSTRATED_BY]->(BrandExample)
  • (BrandExample)-[:TARGETS_ARCHETYPE]->(Archetype)
  • (BrandExample)-[:TARGETS_SEGMENT]->(CustomerSegment)

  • Assets:

  • (VisualIdentityToken)-[:USES_ASSET]->(Asset)
  • (AudioIdentityToken)-[:USES_ASSET]->(Asset)
  • (BrandExample)-[:USES_ASSET]->(Asset)

This is for Brand Brain v1.


6. Brand Brain APIs (v1)

6.1 Context Snapshot for LLMs

Goal: Return everything an LLM needs for a given brand+context in one call.

Endpoint (conceptual):

GET /brand-brain/context

Query params:

  • brand_id (required)
  • region_code (optional)
  • channel (optional)
  • language (optional)
  • archetype_id or segment_id (optional)
  • include_examples (default: true)
  • max_examples (default: 10, configurable)

Response (shape):

{
  "brand": { ... },
  "context": { ... },
  "verbal_identity": { ... },
  "visual_identity": { ... },
  "audio_identity": { ... },
  "guidelines": {
    "must_do": [ ... ],
    "must_not_do": [ ... ],
    "advisory": [ ... ]
  },
  "examples": [ ... ],
  "risk_domains": [ ... ],
  "cultural_signals": [ ... ]
}

Goal: Power UI + tooling search across rules, tokens, examples.

Endpoint:

GET /brand-brain/search

Params:

  • q – free text
  • Filters: brand_id, entity_types, region_code, channel, language, archetype_id
  • Pagination: limit, offset

6.3 Admin / CRUD (Brand Teams)

  • POST /brands/{brand_id}/guidelines
  • PATCH /guidelines/{guideline_id}
  • POST /brands/{brand_id}/verbal-identity
  • PATCH /verbal-identity/{token_id}
  • POST /brands/{brand_id}/examples
  • PATCH /examples/{example_id}

All write operations:

  • Update graph
  • Reindex search/vector layer

7. UI Expectations (for Context)

Engineers don’t need to build all of this in v1, but the data model should support:

  • Brand overview page:

  • Summary, positioning, identity tokens, key rules

  • Context explorer:

  • Filters: brand, region, channel, language, archetype

  • Shows the resolved rules, tokens, and examples for that slice
  • Search:

  • Keyword search over all rules/examples/tokens

  • Example gallery:

  • Good/bad examples with linked rules and contexts

  • Change history:

  • Basic audit log on rules & tokens


8. Implementation Notes & Priorities

v1 priorities:

  1. Stand up graph layer with the Brand Brain slice:

  2. Brand, Context, CustomerSegment, Archetype

  3. Identity tokens, guidelines, examples
  4. Implement Context Snapshot API (/brand-brain/context).
  5. Implement Search API over rules/examples/tokens.
  6. Wire up basic admin CRUD for brand teams.
  7. Ensure config & deployment pattern so tools can call Brand Brain synchronously before LLM use.

Key technical considerations:

  • Indexes:

  • Unique constraints on id fields.

  • Index on Brand.name, Brand.brand_type.
  • Full-text index for ContentGuideline.description, VerbalIdentityToken.style_guidelines, BrandExample.body_text.

  • Versioning:

  • Prefer simple versioning on rules/tokens:

    • Properties: version, valid_from, valid_to.
    • Alternatively, create successor nodes with PREVIOUS_VERSION_OF.
  • Security:

  • No PII in Brand Brain.

  • Access control for write APIs:

    • Brand / market / role-based permissions.