Home · Branding · Lovable

Lovable Brand Identity

A complete profile of Lovable's visual system — colors, typography, components, and personality — extracted from https://lovable.dev/. Built for designers, agents, and AI tools.

Download JSON
Primary
#000000
Accent
#1E1E1E
Body Font
Camera Plain Variable
Heading
Camera Plain Variable

Color Palette

Brand palette extracted from https://lovable.dev/.

primary
#000000
rgb(0, 0, 0)
accent
#1E1E1E
rgb(30, 30, 30)
background
#FCFBF8
rgb(252, 251, 248)
textPrimary
#1C1C1C
rgb(28, 28, 28)
link
#000000
rgb(0, 0, 0)

Typography

Each font links to its Google Fonts page where available.

primary
Camera Plain Variable
Camera Plain Variable Google Fonts →
heading
Camera Plain Variable
Camera Plain Variable Google Fonts →
Camera Plain Variable, ui-sans-serif, system-ui, sans-serif
Not found on Google Fonts? Agent Instructions that you can follow if you have permission to use the fonts:

CharacterQuilt.com suggests this flow that can help:

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. Rewrite each `src: url(...)` to point to your local file path.

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. The CSS extraction step is the same.

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

Visual Assets

Lovable logo
Logo
Lovable favicon
Favicon
Lovable social image
Social Card

UI Components

Live previews rendered using Lovable's actual button styles.

buttonPrimary
background #1E1E1E textColor #FAFAFA borderRadius 8px shadow rgba(0, 0, 0, 0.08) 0px 1px 0px 0px inset, rgba(0, 0, 0, 0.16) 0px -1px 0px 0px inset, rgb(0, 0, 0) 0px 0px 0px 1px inset, rgba(255, 255, 255, 0.24) 0px 1px 0px 0px inset, rgba(255, 255, 255, 0.16) 0px -1px 0px 0px inset, rgba(0, 0, 0, 0.12) 0px 2px 2px -1px, rgba(0, 0, 0, 0.12) 0px 4px 4px -2px
buttonSecondary
background transparent textColor #2E2E2D borderColor #C5C4C2 borderRadius 8px shadow none

Brand Personality

Tone: modern Energy: medium Audience: developers and tech enthusiasts

Lovable Brand in the Wild

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

Frequently Asked Questions

What is Lovable's primary brand color?

Lovable's primary brand color is #000000. It anchors the visual identity across their website, product UI, and marketing materials.

What accent color does Lovable use?

Lovable uses #1E1E1E as an accent color, typically applied to interactive elements like links, buttons, and call-to-action emphasis.

What font does Lovable use?

Lovable uses Camera Plain Variable as the primary typeface across body and headings.

Does Lovable use a light or dark theme?

Lovable's primary site uses a light color scheme, with a background of #FCFBF8.

Where can I find Lovable's logo?

Lovable's logo is available directly on their site (https://lovable.dev/). The current logo URL is included in the machine-readable JSON profile linked above.

How was this brand profile generated?

This profile was extracted from https://lovable.dev/ using the Firecrawl branding extraction API, which inspects the live page's CSS, fonts, color tokens, and component styles. It is not affiliated with or endorsed by Lovable.

Methodology

Brand data on this page was extracted from https://lovable.dev/ on using the Firecrawl branding extraction API, which inspects each site's live CSS, font network requests, color tokens, and component styles. Brand-in-the-wild images were sourced via Google Image Search restricted to ad/webinar/report queries and link out to their original third-party publishers; we link to the source rather than re-hosting third-party content. This page is published by CharacterQuilt and is not affiliated with or endorsed by Lovable.

Machine-Readable Profile

Direct endpoints for agents, designers, and tooling. No login or auth required.

{
  "colorScheme": "light",
  "fonts": [
    {
      "family": "Camera Plain Variable",
      "role": "unknown"
    }
  ],
  "colors": {
    "primary": "#000000",
    "accent": "#1E1E1E",
    "background": "#FCFBF8",
    "textPrimary": "#1C1C1C",
    "link": "#000000"
  },
  "typography": {
    "fontFamilies": {
      "primary": "Camera Plain Variable",
      "heading": "Camera Plain Variable"
    },
    "fontStacks": {
      "heading": [
        "Camera Plain Variable",
        "ui-sans-serif",
        "system-ui",
        "sans-serif"
      ],
      "body": [
        "Camera Plain Variable",
        "ui-sans-serif",
        "system-ui",
        "sans-serif"
      ],
      "paragraph": [
        "Camera Plain Variable",
        "ui-sans-serif",
        "system-ui",
        "sans-serif"
      ]
    },
    "fontSizes": {
      "h1": "20px",
      "h2": "48px",
      "body": "20px"
    }
  },
  "spacing": {
    "baseUnit": 4,
    "borderRadius": "4px"
  },
  "components": {
    "buttonPrimary": {
      "background": "#1E1E1E",
      "textColor": "#FAFAFA",
      "borderRadius": "8px",
      "borderRadiusCorners": {
        "topLeft": "8px",
        "topRight": "8px",
        "bottomRight": "8px",
        "bottomLeft": "8px"
      },
      "shadow": "rgba(0, 0, 0, 0.08) 0px 1px 0px 0px inset, rgba(0, 0, 0, 0.16) 0px -1px 0px 0px inset, rgb(0, 0, 0) 0px 0px 0px 1px inset, rgba(255, 255, 255, 0.24) 0px 1px 0px 0px inset, rgba(255, 255, 255, 0.16) 0px -1px 0px 0px inset, rgba(0, 0, 0, 0.12) 0px 2px 2px -1px, rgba(0, 0, 0, 0.12) 0px 4px 4px -2px"
    },
    "buttonSecondary": {
      "background": "transparent",
      "textColor": "#2E2E2D",
      "borderColor": "#C5C4C2",
      "borderRadius": "8px",
      "borderRadiusCorners": {
        "topLeft": "8px",
        "topRight": "8px",
        "bottomRight": "8px",
        "bottomLeft": "8px"
      },
      "shadow": "none"
    }
  },
  "images": {
    "logo": "data:image/svg+xml;utf8,%3Csvg%20role%3D%22img%22%20aria-label%3D%22Lovable%22%20viewBox%3D%220%200%20755%20129%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20class%3D%22shrink-0%20text-foreground%20h-6%20lg%3Ah-%5B18px%5D%22%20data-fc-idx%3D%220%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M303.603%2030.94c9.149%200%2017.163%201.982%2024.04%205.945%206.876%203.963%2012.18%209.616%2015.91%2016.959%203.788%207.285%205.682%2015.852%205.682%2025.7%200%209.85-1.894%2018.447-5.682%2025.79-3.73%207.343-9.034%2012.996-15.91%2016.959-6.877%203.963-14.891%205.944-24.04%205.944-9.15%200-17.193-1.981-24.128-5.944-6.877-3.963-12.21-9.616-15.998-16.959-3.73-7.343-5.595-15.94-5.595-25.79%200-9.848%201.865-18.415%205.595-25.7%203.788-7.343%209.121-12.996%2015.998-16.96%206.935-3.962%2014.978-5.944%2024.128-5.944Zm176.168%200c8.683%200%2016.026%201.428%2022.029%204.284%206.002%202.797%2010.519%206.818%2013.55%2012.063%203.088%205.245%204.633%2011.511%204.633%2018.796v38.464c0%204.138.292%207.984.874%2011.539.641%203.497%201.545%205.712%202.71%206.644v2.972H496.03c-.641-2.506-1.136-5.332-1.486-8.479-.116-1.04-.214-2.1-.298-3.178a32.537%2032.537%200%200%201-2.149%202.828c-2.914%203.438-6.674%206.207-11.278%208.305-4.545%202.039-9.732%203.059-15.56%203.059-5.77%200-10.957-1.136-15.561-3.409-4.546-2.273-8.13-5.507-10.753-9.703-2.564-4.254-3.846-9.208-3.846-14.861%200-8.626%202.535-15.211%207.605-19.757%205.07-4.604%2012.385-7.605%2021.942-9.004l15.999-2.273c3.205-.467%205.74-1.05%207.605-1.749%201.865-.699%203.234-1.632%204.108-2.797.875-1.224%201.312-2.768%201.312-4.633%200-1.923-.524-3.672-1.573-5.245-.991-1.632-2.507-2.915-4.546-3.847-1.982-.99-4.4-1.486-7.256-1.486-4.546%200-8.189%201.195-10.928%203.585-2.739%202.33-4.225%205.536-4.458%209.615h-27.362c.233-6.178%202.098-11.656%205.595-16.435%203.555-4.837%208.479-8.596%2014.773-11.277%206.294-2.68%2013.58-4.02%2021.856-4.02Zm78.465%2015.936a31.342%2031.342%200%200%201%203.148-4.92c2.797-3.556%206.206-6.267%2010.227-8.132%204.022-1.923%208.538-2.884%2013.55-2.884%207.518%200%2014.046%201.952%2019.582%205.857%205.537%203.905%209.792%209.529%2012.764%2016.872%202.972%207.285%204.458%2015.94%204.458%2025.964%200%209.965-1.516%2018.62-4.546%2025.963-3.031%207.285-7.372%2012.879-13.025%2016.784-5.595%203.905-12.151%205.857-19.669%205.857-5.012%200-9.5-.873-13.463-2.622-3.905-1.748-7.227-4.371-9.966-7.868a31.218%2031.218%200%200%201-3.321-5.4v13.355h-26.227V.342h26.488v46.534ZM710.451%2030.94c8.567%200%2016.173%201.865%2022.817%205.595%206.643%203.73%2011.802%209.15%2015.473%2016.26%203.73%207.11%205.595%2015.619%205.595%2025.526%200%203.555-.03%206.382-.088%208.48h-63.814c.251%204.09%201.038%207.645%202.359%2010.665%201.632%203.73%203.963%206.556%206.993%208.479%203.031%201.865%206.615%202.798%2010.753%202.798%204.546%200%208.305-1.166%2011.277-3.497%202.972-2.389%204.838-5.74%205.595-10.053h26.487c-.815%206.761-3.117%2012.618-6.905%2017.572-3.73%204.953-8.713%208.771-14.949%2011.452-6.236%202.681-13.492%204.02-21.768%204.02-9.324%200-17.425-1.777-24.302-5.332-6.877-3.613-12.239-9.033-16.085-16.259-3.788-7.227-5.682-16.173-5.682-26.838%200-10.14%201.981-18.883%205.944-26.226%203.963-7.401%209.441-13.026%2016.435-16.872%206.993-3.846%2014.949-5.77%2023.865-5.77Zm-502.536%2069.546h32.087c23.362%200%2020.196%2025.163%2020.189%2025.216h-79.726V.342h27.45v100.144Zm185.126-2.03%2019.101-64.981h27.362l-31.908%2092.227h-29.46l-33.132-92.227h28.148l19.889%2064.981Zm263.245%2027.246h-26.488V.342h26.488v125.36ZM493.845%2080.731a13.951%2013.951%200%200%201-3.06%201.961c-2.04.991-4.808%201.836-8.305%202.536l-6.731%201.311c-4.487.874-7.868%202.214-10.141%204.02-2.214%201.807-3.322%204.343-3.322%207.606s1.195%205.857%203.584%207.78c2.39%201.924%205.45%202.886%209.18%202.886%203.73%200%207.022-.816%209.878-2.448%202.855-1.69%205.041-4.021%206.556-6.993%201.574-2.972%202.361-6.353%202.361-10.141v-8.518Zm82.662-29.597c-3.905%200-7.256%201.194-10.053%203.584-2.739%202.33-4.808%205.653-6.207%209.966-1.399%204.254-2.098%209.237-2.098%2014.949%200%205.77.699%2010.782%202.098%2015.036s3.468%207.547%206.207%209.878c2.797%202.331%206.148%203.497%2010.053%203.497%203.963%200%207.285-1.166%209.966-3.497%202.739-2.331%204.778-5.624%206.119-9.878%201.398-4.254%202.098-9.267%202.098-15.036%200-5.77-.7-10.782-2.098-15.036-1.341-4.255-3.38-7.548-6.119-9.88-2.681-2.389-6.003-3.583-9.966-3.583Zm-272.904.088c-3.847%200-7.169%201.078-9.966%203.234-2.739%202.098-4.838%205.274-6.295%209.528-1.457%204.196-2.185%209.383-2.185%2015.56%200%206.178.728%2011.395%202.185%2015.65%201.457%204.254%203.556%207.459%206.295%209.616%202.797%202.097%206.119%203.146%209.966%203.146%203.846%200%207.138-1.049%209.877-3.146%202.74-2.157%204.837-5.334%206.294-9.53%201.457-4.254%202.186-9.5%202.186-15.735%200-9.266-1.602-16.289-4.808-21.068-3.205-4.837-7.722-7.255-13.549-7.255Zm406.237-1.137c-3.905%200-7.343.962-10.316%202.885-2.914%201.865-5.187%204.662-6.819%208.392-.893%202.117-1.532%204.477-1.918%207.081h36.494c-.261-3.3-.917-6.156-1.969-8.567-1.34-3.264-3.321-5.712-5.944-7.344-2.622-1.631-5.799-2.447-9.528-2.447Z%22%20style%3D%22fill%3A%20rgb(28%2C%2028%2C%2028)%20!important%3B%22%2F%3E%3Cmask%20id%3D%22_R_9bajhepolliv9fkl5b_-b%22%20width%3D%22124%22%20height%3D%22126%22%20x%3D%220%22%20y%3D%220%22%20maskUnits%3D%22userSpaceOnUse%22%20style%3D%22mask-type%3A%20alpha%3B%20fill%3A%20none%20!important%3B%22%3E%3Cpath%20fill%3D%22url(%23_R_9bajhepolliv9fkl5b_-a)%22%20fill-rule%3D%22evenodd%22%20d%3D%22M37.3.343c20.43%200%2036.991%2016.605%2036.991%2037.088v14.095h12.31c20.43%200%2036.991%2016.605%2036.991%2037.088s-16.561%2037.088-36.99%2037.088H.31V37.431C.31%2016.948%2016.87.343%2037.3.343Z%22%20clip-rule%3D%22evenodd%22%20style%3D%22fill%3A%20url(%26quot%3B%23_R_9bajhepolliv9fkl5b_-a%26quot%3B)%20!important%3B%22%2F%3E%3C%2Fmask%3E%3Cg%20mask%3D%22url(%23_R_9bajhepolliv9fkl5b_-b)%22%20style%3D%22fill%3A%20none%20!important%3B%22%3E%3Cg%20filter%3D%22url(%23_R_9bajhepolliv9fkl5b_-c)%22%20style%3D%22fill%3A%20none%20!important%3B%22%3E%3Ccircle%20cx%3D%2254.389%22%20cy%3D%2267.257%22%20r%3D%2283.452%22%20fill%3D%22%234B73FF%22%20style%3D%22fill%3A%20rgb(75%2C%20115%2C%20255)%20!important%3B%22%2F%3E%3C%2Fg%3E%3Cg%20filter%3D%22url(%23_R_9bajhepolliv9fkl5b_-d)%22%20style%3D%22fill%3A%20none%20!important%3B%22%3E%3Cellipse%20cx%3D%2263.557%22%20cy%3D%2221.462%22%20fill%3D%22%23FF66F4%22%20rx%3D%22106.879%22%20ry%3D%2283.452%22%20style%3D%22fill%3A%20rgb(255%2C%20102%2C%20244)%20!important%3B%22%2F%3E%3C%2Fg%3E%3Cg%20filter%3D%22url(%23_R_9bajhepolliv9fkl5b_-e)%22%20style%3D%22fill%3A%20none%20!important%3B%22%3E%3Cellipse%20cx%3D%2280.992%22%20cy%3D%225.757%22%20fill%3D%22%23FF0105%22%20rx%3D%2283.452%22%20ry%3D%2273.289%22%20style%3D%22fill%3A%20rgb(255%2C%201%2C%205)%20!important%3B%22%2F%3E%3C%2Fg%3E%3Cg%20filter%3D%22url(%23_R_9bajhepolliv9fkl5b_-f)%22%20style%3D%22fill%3A%20none%20!important%3B%22%3E%3Ccircle%20cx%3D%2265.043%22%20cy%3D%2221.442%22%20r%3D%2250.188%22%20fill%3D%22%23FE7B02%22%20style%3D%22fill%3A%20rgb(254%2C%20123%2C%202)%20!important%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cdefs%20style%3D%22fill%3A%20none%20!important%3B%22%3E%3Cfilter%20id%3D%22_R_9bajhepolliv9fkl5b_-c%22%20width%3D%22241.704%22%20height%3D%22241.704%22%20x%3D%22-66.463%22%20y%3D%22-53.596%22%20color-interpolation-filters%3D%22sRGB%22%20filterUnits%3D%22userSpaceOnUse%22%20style%3D%22fill%3A%20none%20!important%3B%22%3E%3CfeFlood%20flood-opacity%3D%220%22%20result%3D%22BackgroundImageFix%22%20style%3D%22fill%3A%20none%20!important%3B%22%2F%3E%3CfeBlend%20in%3D%22SourceGraphic%22%20in2%3D%22BackgroundImageFix%22%20result%3D%22shape%22%20style%3D%22fill%3A%20none%20!important%3B%22%2F%3E%3CfeGaussianBlur%20result%3D%22effect1_foregroundBlur%22%20stdDeviation%3D%2218.7%22%20style%3D%22fill%3A%20none%20!important%3B%22%2F%3E%3C%2Ffilter%3E%3Cfilter%20id%3D%22_R_9bajhepolliv9fkl5b_-d%22%20width%3D%22288.559%22%20height%3D%22241.704%22%20x%3D%22-80.723%22%20y%3D%22-99.39%22%20color-interpolation-filters%3D%22sRGB%22%20filterUnits%3D%22userSpaceOnUse%22%20style%3D%22fill%3A%20none%20!important%3B%22%3E%3CfeFlood%20flood-opacity%3D%220%22%20result%3D%22BackgroundImageFix%22%20style%3D%22fill%3A%20none%20!important%3B%22%2F%3E%3CfeBlend%20in%3D%22SourceGraphic%22%20in2%3D%22BackgroundImageFix%22%20result%3D%22shape%22%20style%3D%22fill%3A%20none%20!important%3B%22%2F%3E%3CfeGaussianBlur%20result%3D%22effect1_foregroundBlur%22%20stdDeviation%3D%2218.7%22%20style%3D%22fill%3A%20none%20!important%3B%22%2F%3E%3C%2Ffilter%3E%3Cfilter%20id%3D%22_R_9bajhepolliv9fkl5b_-e%22%20width%3D%22241.704%22%20height%3D%22221.378%22%20x%3D%22-39.86%22%20y%3D%22-104.931%22%20color-interpolation-filters%3D%22sRGB%22%20filterUnits%3D%22userSpaceOnUse%22%20style%3D%22fill%3A%20none%20!important%3B%22%3E%3CfeFlood%20flood-opacity%3D%220%22%20result%3D%22BackgroundImageFix%22%20style%3D%22fill%3A%20none%20!important%3B%22%2F%3E%3CfeBlend%20in%3D%22SourceGraphic%22%20in2%3D%22BackgroundImageFix%22%20result%3D%22shape%22%20style%3D%22fill%3A%20none%20!important%3B%22%2F%3E%3CfeGaussianBlur%20result%3D%22effect1_foregroundBlur%22%20stdDeviation%3D%2218.7%22%20style%3D%22fill%3A%20none%20!important%3B%22%2F%3E%3C%2Ffilter%3E%3Cfilter%20id%3D%22_R_9bajhepolliv9fkl5b_-f%22%20width%3D%22175.176%22%20height%3D%22175.176%22%20x%3D%22-22.545%22%20y%3D%22-66.146%22%20color-interpolation-filters%3D%22sRGB%22%20filterUnits%3D%22userSpaceOnUse%22%20style%3D%22fill%3A%20none%20!important%3B%22%3E%3CfeFlood%20flood-opacity%3D%220%22%20result%3D%22BackgroundImageFix%22%20style%3D%22fill%3A%20none%20!important%3B%22%2F%3E%3CfeBlend%20in%3D%22SourceGraphic%22%20in2%3D%22BackgroundImageFix%22%20result%3D%22shape%22%20style%3D%22fill%3A%20none%20!important%3B%22%2F%3E%3CfeGaussianBlur%20result%3D%22effect1_foregroundBlur%22%20stdDeviation%3D%2218.7%22%20style%3D%22fill%3A%20none%20!important%3B%22%2F%3E%3C%2Ffilter%3E%3ClinearGradient%20id%3D%22_R_9bajhepolliv9fkl5b_-a%22%20x1%3D%2241.797%22%20x2%3D%2279.356%22%20y1%3D%2222.372%22%20y2%3D%22125.655%22%20gradientUnits%3D%22userSpaceOnUse%22%20style%3D%22fill%3A%20none%20!important%3B%22%3E%3Cstop%20offset%3D%22.025%22%20stop-color%3D%22%23FF8E63%22%20style%3D%22fill%3A%20none%20!important%3B%20stop-color%3A%20rgb(255%2C%20142%2C%2099)%20!important%3B%22%2F%3E%3Cstop%20offset%3D%22.56%22%20stop-color%3D%22%23FF7EB0%22%20style%3D%22fill%3A%20none%20!important%3B%20stop-color%3A%20rgb(255%2C%20126%2C%20176)%20!important%3B%22%2F%3E%3Cstop%20offset%3D%22.95%22%20stop-color%3D%22%234B73FF%22%20style%3D%22fill%3A%20none%20!important%3B%20stop-color%3A%20rgb(75%2C%20115%2C%20255)%20!important%3B%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3C%2Fsvg%3E",
    "favicon": "https://lovable.dev/favicon.svg",
    "ogImage": "https://lovable.dev/img/opengraph-image.png",
    "logoHref": "/",
    "logoAlt": "Lovable"
  },
  "__llm_logo_reasoning": {
    "selectedIndex": 3,
    "reasoning": "Selected #3 because it is visible, located in the header, links to the homepage, and matches the brand name 'Lovable'.",
    "confidence": 0.9,
    "source": "llm"
  },
  "__llm_button_reasoning": {
    "primary": {
      "index": 0,
      "text": "Get started",
      "reasoning": "Button #0 with text 'Get started' is likely the primary CTA due to its action-oriented text and dark background color, which stands out as a strong call-to-action."
    },
    "secondary": {
      "index": 6,
      "text": "View all",
      "reasoning": "Button #6 with text 'View all' is chosen as secondary due to its transparent background, making it less prominent than the primary button."
    },
    "confidence": 0.9
  },
  "personality": {
    "tone": "modern",
    "energy": "medium",
    "targetAudience": "developers and tech enthusiasts"
  },
  "designSystem": {
    "framework": "tailwind",
    "componentLibrary": ""
  },
  "confidence": {
    "buttons": 0.9,
    "colors": 0.9,
    "overall": 0.9
  },
  "__llm_metadata": {
    "logoSelection": {
      "llmCalled": true,
      "llmSucceeded": true,
      "finalSource": "llm",
      "rawLogoSelection": {
        "selectedLogoIndex": 3,
        "selectedLogoReasoning": "Selected #3 because it is visible, located in the header, links to the homepage, and matches the brand name 'Lovable'.",
        "confidence": 0.9
      }
    },
    "buttonClassification": {
      "llmCalled": true,
      "llmSucceeded": true
    }
  }
}

Related Brand Profiles