# Contentful Brand Identity

A complete profile of **Contentful**'s visual system — colors, typography, components, and personality.

## Quick Facts

| Field | Value |
|---|---|
| Primary | #FF0000 |
| Accent | #2B2D31 |
| Body Font | Avenir Next |
| Heading Font | Avenir Next |

## Color Palette

- primary: #FF0000
- secondary: #6D7682
- accent: #2B2D31
- background: #FFFFFF
- textPrimary: #2B2D31
- link: #1770E5

## Typography

- primary: Avenir Next — https://fonts.google.com/specimen/Avenir+Next
- heading: Avenir Next — https://fonts.google.com/specimen/Avenir+Next

## Visual Assets

- Logo: 
- Favicon: https://www.contentful.com/favicon.ico
- Social card (og:image):

## UI Components

- buttonPrimary: background=#2B2D31, textColor=#FFFFFF, borderRadius=48px, shadow=none
- buttonSecondary: background=#EFF2F6, textColor=#2B2D31, borderColor=#2B2D31, borderRadius=48px, shadow=none

## Brand Personality

Tone: professional · Energy: medium · Audience: businesses and developers

## Contentful Brand in the Wild

Real-world brand assets — ads, campaigns, marketing materials.

- **Shopify App | Contentful**  
  - Image:   
  - Source: [Link](https://www.contentful.com/marketplace/shopify/)  
- **Blog: My journey that led me to Contentful | Contentful**  
  - Image:   
  - Source: [Link](https://www.contentful.com/blog/my-blogging-journey-contentful/)  
- **Documentation | Contentful Docs**  
  - Image:   
  - Source: [Link](https://www.contentful.com/developers/docs/)  
- **How to build a microblogging site | Contentful**  
  - Image:   
  - Source: [Link](https://www.contentful.com/blog/how-to-build-a-lightweight-blog/)  
- **Blog editor tells all: “My 7 favorite Contentful features” | Contentful**  
  - Image:   
  - Source: [Link](https://www.contentful.com/blog/favourite-features-for-editors/)  
- **Documentation | Contentful Docs**  
  - Image:   
  - Source: [Link](https://www.contentful.com/developers/docs/)

## Working with these fonts

Not found on Google Fonts? Follow these steps if you have permission to use the fonts:

1. Open the company's homepage in a browser with DevTools open.
2. In the Network tab, filter by "Font" (or by extension: woff2, woff, ttf, otf).
3. Hard-reload the page and click around (pricing, blog, careers) — some weights only load on specific routes.
4. For each captured font URL: right-click → Save As to download the file locally.
5. View the page's CSS (DevTools → Sources, or curl the stylesheet URLs) and copy out the matching @font-face declarations.

Programmatic alternative: load the URL with Playwright or Puppeteer, listen for `response` events whose `Content-Type` starts with `font/`, and write the body to disk.

Only do this if you have permission to use the brand assets — most proprietary fonts are licensed and may not be redistributable.

## Machine-Readable Profile

```json
{
 "colorScheme": "light",
 "fonts": [
 {
 "family": "Avenir Next",
 "role": "body"
 },
 {
 "family": "Helvetica",
 "role": "body"
 },
 {
 "family": "Arial",
 "role": "body"
 }
 ],
 "colors": {
 "primary": "#FF0000",
 "secondary": "#6D7682",
 "accent": "#2B2D31",
 "background": "#FFFFFF",
 "textPrimary": "#2B2D31",
 "link": "#1770E5"
 },
 "typography": {
 "fontFamilies": {
 "primary": "Avenir Next",
 "heading": "Avenir Next"
 },
 "fontStacks": {
 "heading": [
 "avenirNextFont",
 "avenirNextFont Fallback",
 "Arial",
 "Helvetica",
 "sans-serif"
 ],
 "body": [
 "ui-sans-serif",
 "system-ui",
 "-apple-system",
 "BlinkMacSystemFont",
 "Segoe UI",
 "Roboto",
 "Helvetica",
 "Arial",
 "Noto Sans",
 "sans-serif",
 "Apple Color Emoji",
 "Segoe UI Emoji",
 "Segoe UI Symbol",
 "Noto Color Emoji"
 ],
 "paragraph": [
 "avenirNextFont",
 "avenirNextFont Fallback",
 "Arial",
 "Helvetica",
 "sans-serif"
 ]
 },
 "fontSizes": {
 "h1": "72px",
 "h2": "56px",
 "body": "14px"
 }
 },
 "spacing": {
 "baseUnit": 4,
 "borderRadius": "20px"
 },
 "components": {
 "buttonPrimary": {
 "background": "#2B2D31",
 "textColor": "#FFFFFF",
 "borderRadius": "48px",
 "borderRadiusCorners": {
 "topLeft": "48px",
 "topRight": "48px",
 "bottomRight": "48px",
 "bottomLeft": "48px"
 },
 "shadow": "none"
 },
 "buttonSecondary": {
 "background": "#EFF2F6",
 "textColor": "#2B2D31",
 "borderColor": "#2B2D31",
 "borderRadius": "48px",
 "borderRadiusCorners": {
 "topLeft": "48px",
 "topRight": "48px",
 "bottomRight": "48px",
 "bottomLeft": "48px"
 },
 "shadow": "none"
 }
 },
 "images": {
 "logo": "https://images.ctfassets.net/jtqsy5pye0zd/6wNuQ2xMvbw134rccObi0q/bf61badc6d6d9780609e541713f0bba6/Contentful_Logo_2.5_Dark.svg",
 "favicon": "https://www.contentful.com/favicon.ico",
 "ogImage": "https://images-www.contentful.com/jtqsy5pye0zd/7lBI01K3NAF1S9JZvC4rkV/478c66f4f3db3ef6c500039d3672049d/image.png",
 "logoHref": "/",
 "logoAlt": "Contentful"
 },
 "__llm_logo_reasoning": {
 "selectedIndex": 0,
 "reasoning": "Selected #0 because it is visible, located in the header, links to the homepage, and matches the brand name 'Contentful'.",
 "confidence": 0.95,
 "source": "llm"
 },
 "__llm_button_reasoning": {
 "primary": {
 "index": 0,
 "text": "Explore Contentful Platform",
 "reasoning": "Button #0 has a dark background with white text, making it stand out as a primary CTA. The text 'Explore Contentful Platform' is action-oriented and aligns with the site's focus on content management."
 },
 "secondary": {
 "index": 1,
 "text": "Explore Ecosystem",
 "reasoning": "Button #1 has a different background color (#EFF2F6) and serves as a secondary action with the text 'Explore Ecosystem', which complements the primary CTA."
 },
 "confidence": 0.9
 },
 "personality": {
 "tone": "professional",
 "energy": "medium",
 "targetAudience": "businesses and developers"
 },
 "designSystem": {
 "framework": "custom",
 "componentLibrary": ""
 },
 "confidence": {
 "buttons": 0.9,
 "colors": 0.9,
 "overall": 0.9
 },
 "__llm_metadata": {
 "logoSelection": {
 "llmCalled": true,
 "llmSucceeded": true,
 "finalSource": "llm",
 "rawLogoSelection": {
 "selectedLogoIndex": 0,
 "selectedLogoReasoning": "Selected #0 because it is visible, located in the header, links to the homepage, and matches the brand name 'Contentful'.",
 "confidence": 0.95
 }
 },
 "buttonClassification": {
 "llmCalled": true,
 "llmSucceeded": true
 }
 }
}
```
