{
  "name": "Chatfuel",
  "slug": "chatfuel",
  "domain": "http://chatfuel.com",
  "sources": [
    "yc"
  ],
  "branding": {
    "colorScheme": "light",
    "fonts": [
      {
        "family": "Inter",
        "role": "body"
      }
    ],
    "colors": {
      "primary": "#152442",
      "secondary": "#E0F0FF",
      "accent": "#2C3A55",
      "background": "#FFFFFF",
      "textPrimary": "#2C3A55",
      "link": "#2C3A55"
    },
    "typography": {
      "fontFamilies": {
        "primary": "Inter",
        "heading": "Inter"
      },
      "fontStacks": {
        "heading": [
          "Inter",
          "sans-serif"
        ],
        "body": [
          "Inter",
          "sans-serif"
        ],
        "paragraph": [
          "Inter",
          "sans-serif"
        ]
      },
      "fontSizes": {
        "h1": "16px",
        "h2": "72px",
        "body": "15px"
      }
    },
    "spacing": {
      "baseUnit": 4,
      "borderRadius": "10px"
    },
    "components": {
      "input": {
        "background": "#FFFFFF",
        "textColor": "#FFFFFF",
        "borderColor": null,
        "borderRadius": "20px",
        "borderRadiusCorners": {
          "topLeft": "20px",
          "topRight": "20px",
          "bottomRight": "20px",
          "bottomLeft": "20px"
        },
        "shadow": "none"
      },
      "buttonPrimary": {
        "background": "#F4F4F4",
        "textColor": "#152442",
        "borderRadius": "0px",
        "borderRadiusCorners": {
          "topLeft": "0px",
          "topRight": "0px",
          "bottomRight": "0px",
          "bottomLeft": "0px"
        },
        "shadow": "none"
      },
      "buttonSecondary": {
        "background": "#FFFFFF",
        "textColor": "#152442",
        "borderColor": "#E9E8E8",
        "borderRadius": "10px",
        "borderRadiusCorners": {
          "topLeft": "10px",
          "topRight": "10px",
          "bottomRight": "10px",
          "bottomLeft": "10px"
        },
        "shadow": "none"
      }
    },
    "images": {
      "logo": "https://chatfuel.com/assets/logo-gradient.svg",
      "favicon": "https://chatfuel.com/favicons/apple-touch-icon.png",
      "ogImage": null,
      "logoHref": "/",
      "logoAlt": "Chatfuel logo"
    },
    "__llm_logo_reasoning": {
      "selectedIndex": 0,
      "reasoning": "Selected #0 because it is visible, located in the header, links to the homepage, and has an alt text matching the brand name 'Chatfuel'.",
      "confidence": 0.95,
      "source": "llm"
    },
    "__llm_button_reasoning": {
      "primary": {
        "index": 0,
        "text": "What is Chatfuel?",
        "reasoning": "Button #0 ('What is Chatfuel?') is selected as the primary CTA because it is the first in the list and likely serves as an introductory action, inviting users to learn more about the brand. Although it shares the same color group as others, it stands out due to its position and potential importance."
      },
      "secondary": {
        "index": 7,
        "text": "Broadcasts & notifications",
        "reasoning": "Button #7 ('Broadcasts & notifications') is selected as the secondary CTA because it has a different background color (#FFFFFF) and serves as a functional action, complementing the primary button's informational purpose."
      },
      "confidence": 0.85
    },
    "personality": {
      "tone": "professional",
      "energy": "medium",
      "targetAudience": "businesses seeking customer support solutions"
    },
    "designSystem": {
      "framework": "tailwind",
      "componentLibrary": ""
    },
    "confidence": {
      "buttons": 0.85,
      "colors": 0.9,
      "overall": 0.875
    },
    "__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 has an alt text matching the brand name 'Chatfuel'.",
          "confidence": 0.95
        }
      },
      "buttonClassification": {
        "llmCalled": true,
        "llmSucceeded": true
      }
    }
  },
  "images": [
    {
      "file": "https://e4p9rs3sldnmtboz.public.blob.vercel-storage.com/chatfuel/a57139e118.webp",
      "alt": "How to create a newsletter in Facebook Messenger | Chatfuel Blog",
      "source_url": "https://chatfuel.com/blog/create-a-newsletter",
      "image_url": "https://storage.googleapis.com/chatfuel-cms-staging/pic/sm_create_a_newsletter_4c290cf4a1/sm_create_a_newsletter_4c290cf4a1.png",
      "width": 768,
      "height": 431,
      "bytes": 153850,
      "query": "site:chatfuel.com blog",
      "query_suffix": "site:chatfuel.com blog"
    },
    {
      "file": "https://e4p9rs3sldnmtboz.public.blob.vercel-storage.com/chatfuel/72298a145f.webp",
      "alt": "How to set up AI: The definitive guide",
      "source_url": "https://help.chatfuel.com/how-to-set-up-ai:-the-definitive-guide-1b934b06ecf88097b2a3dd91314c1a6b",
      "image_url": "https://image-forwarder.notaku.so/aHR0cHM6Ly9maWxlLm5vdGlvbi5zby9mL2YvMGU0OTExNDItMzZlYy00ZjM5LTg3NDEtNGY1ZjI2YjA1NjBkL2NjYzFkZTZiLTYxYWUtNDUzNy04ZTQ2LTZiZmIzN2YzM2Q3MC9TY3JlZW5zaG90XzIwMjUtMTAtMDJfYXRfMTUuMzQuMjEucG5nP3RhYmxlPWJsb2NrJmlkPTI4MDM0YjA2LWVjZjgtODA3MS1iNjc5LWU0NDdmZmM3OWViNCZzcGFjZUlkPTBlNDkxMTQyLTM2ZWMtNGYzOS04NzQxLTRmNWYyNmIwNTYwZCZleHBpcmF0aW9uVGltZXN0YW1wPTE3NzYzMTkyMDAwMDAmc2lnbmF0dXJlPWU0TXFSdTFBRXFyelNURllGOVNkMENUZWp2dlNVOE9uQjFQOTFhTFhZNk0=.png?workspaceId=0e491142-36ec-4f39-8741-4f5f26b0560d",
      "width": 5120,
      "height": 2584,
      "bytes": 1099810,
      "query": "site:chatfuel.com",
      "query_suffix": "site:chatfuel.com"
    },
    {
      "file": "https://e4p9rs3sldnmtboz.public.blob.vercel-storage.com/chatfuel/7e2bc28be7.webp",
      "alt": "How this marketing agency used a bot to help empower freelancers and small  businesses | Chatfuel Blog",
      "source_url": "https://chatfuel.com/blog/marketing-agency-used-a-bot-to-empower-freelancers-and-small-businesses",
      "image_url": "https://storage.googleapis.com/chatfuel-cms-staging/pic/sm_marketing_agency_used_a_bot_to_empower_freelancers_and_small_businesses_7781cd3b67/sm_marketing_agency_used_a_bot_to_empower_freelancers_and_small_businesses_7781cd3b67.png",
      "width": 768,
      "height": 431,
      "bytes": 566539,
      "query": "site:chatfuel.com blog",
      "query_suffix": "site:chatfuel.com blog"
    },
    {
      "file": "https://e4p9rs3sldnmtboz.public.blob.vercel-storage.com/chatfuel/13e651fef9.webp",
      "alt": "What is conversational marketing: the beginner's guide | Chatfuel Blog",
      "source_url": "https://chatfuel.com/blog/conversational-marketing",
      "image_url": "https://storage.googleapis.com/chatfuel-cms-staging/pic/sm_conversational_marketing_0015446fd7/sm_conversational_marketing_0015446fd7.png",
      "width": 768,
      "height": 432,
      "bytes": 104443,
      "query": "site:chatfuel.com blog",
      "query_suffix": "site:chatfuel.com blog"
    },
    {
      "file": "https://e4p9rs3sldnmtboz.public.blob.vercel-storage.com/chatfuel/6c8f4f52a7.webp",
      "alt": "How to create a newsletter in Facebook Messenger | Chatfuel Blog",
      "source_url": "https://chatfuel.com/blog/create-a-newsletter",
      "image_url": "https://storage.googleapis.com/chatfuel-cms-staging/pic/create_a_newsletter_1_d58f2764fd/create_a_newsletter_1_d58f2764fd.gif",
      "width": 1514,
      "height": 942,
      "bytes": 2073556,
      "query": "site:chatfuel.com blog",
      "query_suffix": "site:chatfuel.com blog"
    },
    {
      "file": "https://e4p9rs3sldnmtboz.public.blob.vercel-storage.com/chatfuel/7b580ae370.webp",
      "alt": "How to build a free chatbot for customer service | Chatfuel Blog",
      "source_url": "https://chatfuel.com/blog/chatbot-for-customer-service",
      "image_url": "https://storage.googleapis.com/chatfuel-cms-staging/pic/original_chatbot_for_customer_service_9929c51fb4/original_chatbot_for_customer_service_9929c51fb4.jpg",
      "width": 4160,
      "height": 2336,
      "bytes": 2022972,
      "query": "site:chatfuel.com",
      "query_suffix": "site:chatfuel.com"
    }
  ],
  "font_resources": [
    {
      "family": "Inter",
      "google_fonts_url": "https://fonts.google.com/specimen/Inter"
    },
    {
      "family": "Inter",
      "google_fonts_url": "https://fonts.google.com/specimen/Inter"
    }
  ],
  "google_fonts_css": "https://fonts.googleapis.com/css2?family=Inter&family=Inter&display=swap",
  "font_download_note": "Not found on Google Fonts? Agent Instructions that you can follow if you have permission to use the fonts:\n\nCharacterQuilt.com suggests this flow that can help:\n\n1. Open the company's homepage in a browser with DevTools open.\n2. In the Network tab, filter by \"Font\" (or by extension: woff2, woff, ttf, otf).\n3. Hard-reload the page and click around (pricing, blog, careers) — some weights only load on specific routes.\n4. For each captured font URL: right-click → Save As to download the file locally.\n5. View the page's CSS (DevTools → Sources, or curl the stylesheet URLs) and copy out the matching @font-face declarations. Rewrite each `src: url(...)` to point to your local file path.\n\nProgrammatic alternative: load the URL with Playwright or Puppeteer, listen for `response` events whose `Content-Type` starts with `font/`, and write the body to disk. The CSS extraction step is the same.\n\nOnly do this if you have permission to use the brand assets — most proprietary fonts are licensed and may not be redistributable.",
  "page_url": "https://characterquilt.com/branding/chatfuel",
  "agent_instructions": "You are designing or implementing in Chatfuel's brand identity.\n\n# Brand profile\n- Company: Chatfuel\n- Source: http://chatfuel.com\n- Color scheme: light\n\n# Colors\n- primary: #152442\n- secondary: #E0F0FF\n- accent: #2C3A55\n- background: #FFFFFF\n- textPrimary: #2C3A55\n- link: #2C3A55\n\n# Typography\n- primary: Inter — https://fonts.google.com/specimen/Inter\n- heading: Inter — https://fonts.google.com/specimen/Inter\n\nLoad all fonts at once: <link rel=\"stylesheet\" href=\"https://fonts.googleapis.com/css2?family=Inter&family=Inter&display=swap\">\n\n# UI Components\n- input: background=#FFFFFF, textColor=#FFFFFF, borderColor=null, borderRadius=20px, shadow=none\n- buttonPrimary: background=#F4F4F4, textColor=#152442, borderRadius=0px, shadow=none\n- buttonSecondary: background=#FFFFFF, textColor=#152442, borderColor=#E9E8E8, borderRadius=10px, shadow=none\n\n# Brand voice\n- Tone: professional\n- Energy: medium\n- Audience: businesses seeking customer support solutions\n\n# Working with these fonts\nNot found on Google Fonts? Agent Instructions that you can follow if you have permission to use the fonts:\n\nCharacterQuilt.com suggests this flow that can help:\n\n1. Open the company's homepage in a browser with DevTools open.\n2. In the Network tab, filter by \"Font\" (or by extension: woff2, woff, ttf, otf).\n3. Hard-reload the page and click around (pricing, blog, careers) — some weights only load on specific routes.\n4. For each captured font URL: right-click → Save As to download the file locally.\n5. View the page's CSS (DevTools → Sources, or curl the stylesheet URLs) and copy out the matching @font-face declarations. Rewrite each `src: url(...)` to point to your local file path.\n\nProgrammatic alternative: load the URL with Playwright or Puppeteer, listen for `response` events whose `Content-Type` starts with `font/`, and write the body to disk. The CSS extraction step is the same.\n\nOnly do this if you have permission to use the brand assets — most proprietary fonts are licensed and may not be redistributable.\n\n# Full machine-readable profile\nhttps://characterquilt.com/branding/chatfuel.json",
  "page_markdown": "# Chatfuel Brand Identity\n\nA complete profile of **Chatfuel**'s visual system — colors, typography, components, and personality — extracted from http://chatfuel.com. Built for designers, agents, and AI tools.\n\n- Page: https://characterquilt.com/branding/chatfuel\n- Machine-readable JSON: https://characterquilt.com/branding/chatfuel.json\n- Per-page llms.txt: https://characterquilt.com/branding/chatfuel/llms.txt\n\n## Quick Facts\n\n| Field | Value |\n|---|---|\n| Primary | #152442 |\n| Accent | #2C3A55 |\n| Body Font | Inter |\n| Heading Font | Inter |\n\n## Color Palette\n\n- primary: #152442\n- secondary: #E0F0FF\n- accent: #2C3A55\n- background: #FFFFFF\n- textPrimary: #2C3A55\n- link: #2C3A55\n\n## Typography\n\n- primary: Inter — https://fonts.google.com/specimen/Inter\n- heading: Inter — https://fonts.google.com/specimen/Inter\n\n## Visual Assets\n\n- Logo: https://chatfuel.com/assets/logo-gradient.svg\n- Favicon: https://chatfuel.com/favicons/apple-touch-icon.png\n\n## UI Components\n\n- input: background=#FFFFFF, textColor=#FFFFFF, borderColor=null, borderRadius=20px, shadow=none\n- buttonPrimary: background=#F4F4F4, textColor=#152442, borderRadius=0px, shadow=none\n- buttonSecondary: background=#FFFFFF, textColor=#152442, borderColor=#E9E8E8, borderRadius=10px, shadow=none\n\n## Brand Personality\n\nTone: professional · Energy: medium · Audience: businesses seeking customer support solutions\n\n## Chatfuel Brand in the Wild\n\nReal-world brand assets — ads, campaigns, marketing materials.\n\n- **How to create a newsletter in Facebook Messenger | Chatfuel Blog**\n  - Image: https://storage.googleapis.com/chatfuel-cms-staging/pic/sm_create_a_newsletter_4c290cf4a1/sm_create_a_newsletter_4c290cf4a1.png\n  - Source: https://chatfuel.com/blog/create-a-newsletter\n- **How to set up AI: The definitive guide**\n  - Image: https://image-forwarder.notaku.so/aHR0cHM6Ly9maWxlLm5vdGlvbi5zby9mL2YvMGU0OTExNDItMzZlYy00ZjM5LTg3NDEtNGY1ZjI2YjA1NjBkL2NjYzFkZTZiLTYxYWUtNDUzNy04ZTQ2LTZiZmIzN2YzM2Q3MC9TY3JlZW5zaG90XzIwMjUtMTAtMDJfYXRfMTUuMzQuMjEucG5nP3RhYmxlPWJsb2NrJmlkPTI4MDM0YjA2LWVjZjgtODA3MS1iNjc5LWU0NDdmZmM3OWViNCZzcGFjZUlkPTBlNDkxMTQyLTM2ZWMtNGYzOS04NzQxLTRmNWYyNmIwNTYwZCZleHBpcmF0aW9uVGltZXN0YW1wPTE3NzYzMTkyMDAwMDAmc2lnbmF0dXJlPWU0TXFSdTFBRXFyelNURllGOVNkMENUZWp2dlNVOE9uQjFQOTFhTFhZNk0=.png?workspaceId=0e491142-36ec-4f39-8741-4f5f26b0560d\n  - Source: https://help.chatfuel.com/how-to-set-up-ai:-the-definitive-guide-1b934b06ecf88097b2a3dd91314c1a6b\n- **How this marketing agency used a bot to help empower freelancers and small  businesses | Chatfuel Blog**\n  - Image: https://storage.googleapis.com/chatfuel-cms-staging/pic/sm_marketing_agency_used_a_bot_to_empower_freelancers_and_small_businesses_7781cd3b67/sm_marketing_agency_used_a_bot_to_empower_freelancers_and_small_businesses_7781cd3b67.png\n  - Source: https://chatfuel.com/blog/marketing-agency-used-a-bot-to-empower-freelancers-and-small-businesses\n- **What is conversational marketing: the beginner's guide | Chatfuel Blog**\n  - Image: https://storage.googleapis.com/chatfuel-cms-staging/pic/sm_conversational_marketing_0015446fd7/sm_conversational_marketing_0015446fd7.png\n  - Source: https://chatfuel.com/blog/conversational-marketing\n- **How to create a newsletter in Facebook Messenger | Chatfuel Blog**\n  - Image: https://storage.googleapis.com/chatfuel-cms-staging/pic/create_a_newsletter_1_d58f2764fd/create_a_newsletter_1_d58f2764fd.gif\n  - Source: https://chatfuel.com/blog/create-a-newsletter\n- **How to build a free chatbot for customer service | Chatfuel Blog**\n  - Image: https://storage.googleapis.com/chatfuel-cms-staging/pic/original_chatbot_for_customer_service_9929c51fb4/original_chatbot_for_customer_service_9929c51fb4.jpg\n  - Source: https://chatfuel.com/blog/chatbot-for-customer-service\n\n## Working with these fonts\n\nNot found on Google Fonts? Agent Instructions that you can follow if you have permission to use the fonts:\n\nCharacterQuilt.com suggests this flow that can help:\n\n1. Open the company's homepage in a browser with DevTools open.\n2. In the Network tab, filter by \"Font\" (or by extension: woff2, woff, ttf, otf).\n3. Hard-reload the page and click around (pricing, blog, careers) — some weights only load on specific routes.\n4. For each captured font URL: right-click → Save As to download the file locally.\n5. View the page's CSS (DevTools → Sources, or curl the stylesheet URLs) and copy out the matching @font-face declarations. Rewrite each `src: url(...)` to point to your local file path.\n\nProgrammatic alternative: load the URL with Playwright or Puppeteer, listen for `response` events whose `Content-Type` starts with `font/`, and write the body to disk. The CSS extraction step is the same.\n\nOnly do this if you have permission to use the brand assets — most proprietary fonts are licensed and may not be redistributable.\n\n## Machine-Readable Profile\n\n```json\n{\n  \"colorScheme\": \"light\",\n  \"fonts\": [\n    {\n      \"family\": \"Inter\",\n      \"role\": \"body\"\n    }\n  ],\n  \"colors\": {\n    \"primary\": \"#152442\",\n    \"secondary\": \"#E0F0FF\",\n    \"accent\": \"#2C3A55\",\n    \"background\": \"#FFFFFF\",\n    \"textPrimary\": \"#2C3A55\",\n    \"link\": \"#2C3A55\"\n  },\n  \"typography\": {\n    \"fontFamilies\": {\n      \"primary\": \"Inter\",\n      \"heading\": \"Inter\"\n    },\n    \"fontStacks\": {\n      \"heading\": [\n        \"Inter\",\n        \"sans-serif\"\n      ],\n      \"body\": [\n        \"Inter\",\n        \"sans-serif\"\n      ],\n      \"paragraph\": [\n        \"Inter\",\n        \"sans-serif\"\n      ]\n    },\n    \"fontSizes\": {\n      \"h1\": \"16px\",\n      \"h2\": \"72px\",\n      \"body\": \"15px\"\n    }\n  },\n  \"spacing\": {\n    \"baseUnit\": 4,\n    \"borderRadius\": \"10px\"\n  },\n  \"components\": {\n    \"input\": {\n      \"background\": \"#FFFFFF\",\n      \"textColor\": \"#FFFFFF\",\n      \"borderColor\": null,\n      \"borderRadius\": \"20px\",\n      \"borderRadiusCorners\": {\n        \"topLeft\": \"20px\",\n        \"topRight\": \"20px\",\n        \"bottomRight\": \"20px\",\n        \"bottomLeft\": \"20px\"\n      },\n      \"shadow\": \"none\"\n    },\n    \"buttonPrimary\": {\n      \"background\": \"#F4F4F4\",\n      \"textColor\": \"#152442\",\n      \"borderRadius\": \"0px\",\n      \"borderRadiusCorners\": {\n        \"topLeft\": \"0px\",\n        \"topRight\": \"0px\",\n        \"bottomRight\": \"0px\",\n        \"bottomLeft\": \"0px\"\n      },\n      \"shadow\": \"none\"\n    },\n    \"buttonSecondary\": {\n      \"background\": \"#FFFFFF\",\n      \"textColor\": \"#152442\",\n      \"borderColor\": \"#E9E8E8\",\n      \"borderRadius\": \"10px\",\n      \"borderRadiusCorners\": {\n        \"topLeft\": \"10px\",\n        \"topRight\": \"10px\",\n        \"bottomRight\": \"10px\",\n        \"bottomLeft\": \"10px\"\n      },\n      \"shadow\": \"none\"\n    }\n  },\n  \"images\": {\n    \"logo\": \"https://chatfuel.com/assets/logo-gradient.svg\",\n    \"favicon\": \"https://chatfuel.com/favicons/apple-touch-icon.png\",\n    \"ogImage\": null,\n    \"logoHref\": \"/\",\n    \"logoAlt\": \"Chatfuel logo\"\n  },\n  \"__llm_logo_reasoning\": {\n    \"selectedIndex\": 0,\n    \"reasoning\": \"Selected #0 because it is visible, located in the header, links to the homepage, and has an alt text matching the brand name 'Chatfuel'.\",\n    \"confidence\": 0.95,\n    \"source\": \"llm\"\n  },\n  \"__llm_button_reasoning\": {\n    \"primary\": {\n      \"index\": 0,\n      \"text\": \"What is Chatfuel?\",\n      \"reasoning\": \"Button #0 ('What is Chatfuel?') is selected as the primary CTA because it is the first in the list and likely serves as an introductory action, inviting users to learn more about the brand. Although it shares the same color group as others, it stands out due to its position and potential importance.\"\n    },\n    \"secondary\": {\n      \"index\": 7,\n      \"text\": \"Broadcasts & notifications\",\n      \"reasoning\": \"Button #7 ('Broadcasts & notifications') is selected as the secondary CTA because it has a different background color (#FFFFFF) and serves as a functional action, complementing the primary button's informational purpose.\"\n    },\n    \"confidence\": 0.85\n  },\n  \"personality\": {\n    \"tone\": \"professional\",\n    \"energy\": \"medium\",\n    \"targetAudience\": \"businesses seeking customer support solutions\"\n  },\n  \"designSystem\": {\n    \"framework\": \"tailwind\",\n    \"componentLibrary\": \"\"\n  },\n  \"confidence\": {\n    \"buttons\": 0.85,\n    \"colors\": 0.9,\n    \"overall\": 0.875\n  },\n  \"__llm_metadata\": {\n    \"logoSelection\": {\n      \"llmCalled\": true,\n      \"llmSucceeded\": true,\n      \"finalSource\": \"llm\",\n      \"rawLogoSelection\": {\n        \"selectedLogoIndex\": 0,\n        \"selectedLogoReasoning\": \"Selected #0 because it is visible, located in the header, links to the homepage, and has an alt text matching the brand name 'Chatfuel'.\",\n        \"confidence\": 0.95\n      }\n    },\n    \"buttonClassification\": {\n      \"llmCalled\": true,\n      \"llmSucceeded\": true\n    }\n  }\n}\n```\n"
}