> ## Documentation Index
> Fetch the complete documentation index at: https://docs.thread.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Branding

> Customize Thread with your company's visual identity for a seamless customer experience

## Overview

Thread's branding features let you customize how your company appears in customer-facing communications. When configured properly, emails and Slack messages look like they come directly from your brand.

***

## Brand Assets

### Logo (Wide Format)

Your primary logo used in email headers and formal communications.

**Requirements:**

* Horizontal/wide format preferred
* Transparent background (PNG or SVG)
* Minimum width: 200px
* Maximum file size: 1MB
* Publicly accessible URL

**Where it appears:**

* Email headers
* Customer portal header
* Documents and exports

### Icon (Square Format)

Your icon or logomark used in Slack and compact spaces.

**Requirements:**

* Square format (1:1 aspect ratio)
* Minimum size: 128x128px
* Works at small sizes
* Publicly accessible URL

**Where it appears:**

* Slack message avatars
* Browser favicon (portal)
* Mobile app icons

***

## Setting Up Branding

### Auto-Fetch from Your Domain

Thread can automatically pull your branding from your company website:

<Steps>
  <Step title="Go to Settings">
    Navigate to **Settings** from the main navigation.
  </Step>

  <Step title="Click Auto-Fetch">
    In the Branding Editor tab, click **"Auto-fetch Branding"**.
  </Step>

  <Step title="Review Results">
    Thread uses Brandfetch to find:

    * Company logo
    * Icon/logomark
    * Primary brand color
    * Secondary color
    * Company name
  </Step>

  <Step title="Adjust and Save">
    Modify any values that need adjustment, then click **"Save Changes"**.
  </Step>
</Steps>

<Info>
  Auto-fetch uses your organization's email domain. Make sure your domain is correctly set in organization settings.
</Info>

### Manual Configuration

If auto-fetch doesn't work or you prefer custom assets:

#### Uploading Logo

<Steps>
  <Step title="Click Change Logo">
    In the Branding Editor, click **"Change Logo"**.
  </Step>

  <Step title="Enter Logo URL">
    Paste the URL to your logo. Use a CDN or image hosting service for reliability:

    * Cloudinary
    * AWS S3
    * Google Cloud Storage
    * Your company CDN
  </Step>

  <Step title="Preview">
    Verify the logo loads correctly in the preview.
  </Step>

  <Step title="Save">
    Click **"Update Logo"**.
  </Step>
</Steps>

<Warning>
  Don't use temporary URLs or local file paths. Logos must be publicly accessible and permanent.
</Warning>

#### Setting Brand Colors

<Steps>
  <Step title="Click Color Picker">
    Click the color swatch next to Primary Color or Secondary Color.
  </Step>

  <Step title="Choose Color">
    Either:

    * Use the color picker to select visually
    * Enter a hex code directly (e.g., `#04593a`)
  </Step>

  <Step title="Save Changes">
    Click **"Save Changes"** to apply.
  </Step>
</Steps>

**Color Usage:**

| Color         | Usage                                  |
| ------------- | -------------------------------------- |
| **Primary**   | Buttons, links, accents, email headers |
| **Secondary** | Backgrounds, subtle highlights         |

***

## Company Information

### Company Name

The display name used in communications:

* Email sender name
* Slack message attribution
* Portal header

**Example:** Setting "Acme Inc" means emails come from `Acme Inc <notifications@...>`

### Support Email

Contact email shown to customers:

* Email footers: "Questions? Contact us at support\@..."
* Portal contact links
* Error messages

<Tip>
  Use a monitored email address. Customers may reply to support requests.
</Tip>

***

## Preview Your Branding

Thread provides real-time previews so you can see exactly how your branding appears.

### Email Preview

<Steps>
  <Step title="Go to Email Preview Tab">
    In Settings, click the **"Email Preview"** tab.
  </Step>

  <Step title="View Sample Emails">
    See how different email types appear:

    * Welcome emails
    * Action notifications
    * Milestone updates
  </Step>

  <Step title="Check Elements">
    Verify:

    * Logo appears correctly
    * Colors match your brand
    * Company name is correct
    * Support email is accurate
  </Step>
</Steps>

### Slack Preview

<Steps>
  <Step title="Go to Slack Preview Tab">
    In Settings, click the **"Slack Preview"** tab.
  </Step>

  <Step title="View Sample Messages">
    See how Slack messages appear with:

    * Your icon as avatar
    * Your company name as sender
    * Message formatting
  </Step>
</Steps>

***

## Custom Domains

### Portal Custom Domain

Give customers a branded portal URL:

**Default:** `portal.thread.app/yourorg/account`

**Custom:** `onboarding.yourcompany.com/account`

<Steps>
  <Step title="Go to Custom Domains">
    In Settings, navigate to custom domain settings.
  </Step>

  <Step title="Enter Your Domain">
    Enter your desired subdomain (e.g., `onboarding.yourcompany.com`).
  </Step>

  <Step title="Add DNS Record">
    Add a CNAME record pointing to Thread's servers:

    ```
    onboarding.yourcompany.com CNAME portal.thread.app
    ```
  </Step>

  <Step title="Verify">
    Click **"Verify Domain"**. May take up to 48 hours for DNS propagation.
  </Step>

  <Step title="Enable SSL">
    Thread automatically provisions an SSL certificate once verified.
  </Step>
</Steps>

<Warning>
  Work with your IT team to add DNS records. Custom domains require proper configuration to avoid downtime.
</Warning>

### Email Sending Domain

See [Organization Settings](/admin-guide/organization-settings#email-domain-settings) for configuring custom email sending domains.

***

## Branding Best Practices

<CardGroup cols={2}>
  <Card title="Test All Channels" icon="check-circle">
    Preview emails and Slack before going live. What looks good in one channel may not work in another.
  </Card>

  <Card title="Use High-Quality Assets" icon="image">
    Low-resolution logos look unprofessional. Use SVG or high-DPI PNGs.
  </Card>

  <Card title="Maintain Consistency" icon="palette">
    Use the same colors and logos as your main website for brand recognition.
  </Card>

  <Card title="Consider Dark Mode" icon="moon">
    Ensure your logo and colors work on both light and dark backgrounds.
  </Card>
</CardGroup>

### Logo Tips

* **Transparent backgrounds** work best (PNG or SVG)
* **Horizontal logos** for email headers
* **Square icons** should work at 32px (Slack uses small avatars)
* **High contrast** against white and dark backgrounds

### Color Selection

* **Primary color** should be your main brand color
* **Secondary color** should complement, not compete
* **Test accessibility** - ensure sufficient contrast for text

***

## Troubleshooting

<AccordionGroup>
  <Accordion title="Logo Not Loading">
    **Check:**

    * URL is publicly accessible (try opening in incognito)
    * URL uses HTTPS (not HTTP)
    * Image format is supported (PNG, JPG, SVG, WebP)
    * No authentication required to access
  </Accordion>

  <Accordion title="Auto-Fetch Returns Wrong Brand">
    **Cause:** Brandfetch found a different company with similar domain.

    **Solution:** Manually configure your branding assets instead.
  </Accordion>

  <Accordion title="Colors Look Different in Email">
    **Cause:** Email clients render colors differently.

    **Solution:** Test in multiple email clients (Gmail, Outlook, Apple Mail) and adjust as needed.
  </Accordion>

  <Accordion title="Custom Domain Not Working">
    **Check:**

    * DNS record is correctly configured
    * Record has propagated (may take 48 hours)
    * No typos in the CNAME target
    * SSL certificate has been provisioned
  </Accordion>
</AccordionGroup>

***

## What's Next?

<CardGroup cols={2}>
  <Card title="Organization Settings" icon="building" href="/admin-guide/organization-settings">
    Configure other organization settings
  </Card>

  <Card title="Integrations" icon="plug" href="/integrations/overview">
    Connect Slack and email integrations
  </Card>
</CardGroup>
