White Label
Customize Leenops with your own branding, domain, and login experience for your organization.
White-label lets you present Leenops under your own brand. Your team sees your logo, your colors, and your domain — with no mention of Leenops unless you choose to show it.
White-label is available on the Enterprise plan and requires Admin or Owner permissions.
What You Can Customize
| Area | What Changes |
|---|---|
| App name | Browser tab title, sidebar footer, login page, PWA, AI assistant name |
| Logos | Sidebar (expanded + collapsed), login and all sign-in pages, mobile header |
| Colors | Primary color applies to buttons and links on your login page; panel colors are configurable |
| Font | Font family on the login page (Google Fonts supported) |
| Login page | Layout (3 options), welcome text, description, background image and its opacity, panel colors |
| Sign-in methods | Choose which options appear: email + password, Microsoft, Google, GitHub — or redirect to your own SSO |
| Domain | Custom domain (e.g., crm.yourcompany.com) — invite links and page metadata follow it |
| Support | In-app support requests route to your support inbox, not Leenops's |
| Documentation | The Help panel opens your docs URL (or hides docs entirely) |
| Legal | Your own Terms of Service and Privacy Policy links on the login page |
| Favicon | Browser tab icon — applied server-side, visible from the first paint |
| PWA | App name, icon, and colors when installed on mobile |
| Sender display name on all outgoing workspace email; email logo in templates | |
| "Powered by" | Hidden on the login page and every public page (share links, booking pages, forms, support widget) |
Getting Started
Navigate to Settings > Administration > White Label. The configuration is organized into six tabs.
General
- App Name — Your company or product name. Appears in the browser tab, sidebar, login page, and as the name of the built-in AI assistant ("YourBrand AI").
- Hide Leenops Branding — When enabled, removes all Leenops references from the interface.
- Hide "Powered by" — Removes the "Powered by Leenops" text from the login page and all public pages: shared catalogs, project share links, meeting recaps, team booking pages, public forms, and the embeddable support widget.
- Support Email — When set, in-app "Contact support" requests from your members are delivered to this address under your brand — they never reach Leenops. Leave empty to keep the default Leenops support routing.
- Documentation URL — When set, the Help panel's "Documentation" entry opens this URL. When empty (and white-label is active), Leenops documentation is hidden from your members entirely.
- Terms of Service / Privacy Policy URLs — Your own legal pages, linked from your branded login page.
- Custom CSS — Advanced: inject custom CSS rules to fine-tune styling beyond the standard options.
- Meta Title / Meta Description — Override the browser tab title and description. These are rendered server-side, so link previews and the very first paint carry your brand.
Branding
- Full Logo — Horizontal logo for the sidebar and login page. Recommended: 120x24px, PNG or SVG.
- Icon Logo — Square logo for the collapsed sidebar and PWA icon. Recommended: 24x24px.
- Favicon — Browser tab icon. Recommended: 32x32px, .ico or .png.
- Primary Color — Main brand color used for buttons, links, and accents.
- Secondary Color — Optional secondary accent.
- Accent Color — Optional tertiary accent.
- Font Family — The font used across the interface (e.g.,
Inter,Roboto,Poppins).
Login Page
Content:
- Welcome Text — Large heading on the branding panel (replaces the default carousel).
- Description — Subtitle below the welcome text.
- Background Image — Optional background image.
Layout & Colors:
- Layout — Choose one of three structures:
- Split (default) — branding panel on the left, sign-in form on the right.
- Centered — your logo above a single centered sign-in card, no side panel.
- Full image — the background image fills the screen with the sign-in card floating on top.
- Panel Background / Text Color — Recolor the branding panel to match your brand (light or dark — text contrast is handled automatically). Empty keeps the default dark panel.
- Background Image Opacity — How strongly the background image shows through (0–1, default 0.3).
Sign-in Methods:
- Enable exactly the options your team uses: email + password, Microsoft, Google, GitHub. A construction company that only uses Microsoft 365 can show a single Microsoft button and nothing else.
- Show "Start free trial" link — Off by default on white-label domains (see Registration on your domain).
- Login Redirect URL — SSO escape hatch: when set, anyone visiting your domain's login page is immediately redirected to this URL (e.g., your own identity provider's sign-in). Use this if you want a completely different login experience.
When white-label is active, the login page:
- Shows your logo, layout, panel colors, welcome text, and background image
- Applies your primary color to buttons and links, and loads your font family
- Uses your favicon and page title — rendered server-side, no flash of Leenops branding
- Links your Terms/Privacy pages if configured (Leenops's are never shown)
- Shows "Powered by Leenops" only if you haven't hidden it
Welcome text and description can also be translated per language via locale overrides (contact support to configure per-locale strings).
PWA (Progressive Web App)
These settings control how the app appears when installed on a mobile device or desktop:
- PWA Name — Full app name in the install dialog.
- PWA Short Name — Abbreviated name on the home screen.
- Background Color — Splash screen background.
- Theme Color — Status bar color on mobile.
Domain
Connect a custom domain so your team accesses the platform at your own URL.
Setup steps:
- Enter your desired domain (e.g.,
crm.yourcompany.com) - Save — a verification token is generated automatically
- Add the domain in your Vercel project settings (Settings > Domains)
- At your domain registrar, create a CNAME record pointing to the value Vercel provides
- Optionally, add a TXT record with the verification token for ownership verification
- Contact your Leenops administrator to mark the domain as verified
Use the CNAME target from the Vercel dashboard, not from the instructions card. Each domain gets a unique target.
DNS changes can take up to 48 hours to propagate. Vercel automatically provisions SSL once the CNAME is detected.
- From Name — Display name for outgoing emails (e.g., "BatiOffice Support"). Applied to all workspace email: team invites, booking confirmations sent to your customers, meeting digests, quotation notifications, and verification codes. Falls back to your app name.
- From Domain — Display-only for now. Actually sending from your own domain requires connecting your own sending provider in Settings > Administration > Email (Resend API key + DNS verification: SPF, DKIM, DMARC).
- Email Logo — Logo included in email templates.
Team invite emails also carry your brand in the subject line ("join X on YourBrand") and their links point to your custom domain once it's verified.
How It Works
When someone visits your custom domain:
- Marketing pages are blocked —
/,/pricing, and other public pages redirect to/login - The page is branded from the first byte — the tab title, favicon, and link previews are rendered server-side with your brand
- Login page loads your layout, colors, and sign-in methods
- After sign-in — The sidebar, page titles, help panel, and AI assistant all use your branding
- PWA installs use your app name and icon
Your team's data remains fully isolated. Other workspaces on the same Leenops infrastructure cannot see your data, and you cannot see theirs.
Registration on Your Domain
Self-serve signup is disabled on white-label domains: /register redirects to your login page, and the "Start free trial" link is hidden by default. The only way to join your workspace is by invitation — invite emails link to your custom domain and carry your brand.
This is deliberate: it prevents your employees from accidentally creating unrelated trial workspaces outside your organization.
Support & Documentation Routing
White-label support follows a two-tier model:
- Your end users contact you — when Support Email is set, the in-app Help panel routes their requests to your inbox, under your email identity. The vendor is invisible.
- You contact Leenops — as the workspace admin, you escalate to Leenops through your account manager or the standard support channel.
The Help panel is fully brand-aware: the AI assistant introduces itself with your app name, the Documentation entry opens your docs URL (or is hidden), and no Leenops addresses or links appear anywhere your members can see.
Asset Recommendations
| Asset | Size | Format | Notes |
|---|---|---|---|
| Full logo | 120 x 24 px | SVG or PNG | Horizontal layout, transparent background |
| Icon logo | 24 x 24 px | SVG or PNG | Square, for collapsed sidebar |
| Favicon | 32 x 32 px | ICO or PNG | Browser tab icon |
| Login background | 1920 x 1080 px | JPG | Optional, displayed at 30% opacity |
| Email logo | 200 x 50 px | PNG | For email template headers |
Upload assets to a publicly accessible URL (e.g., your CDN or cloud storage). Paste the URL into the corresponding field.
FAQ
Can I change the branding after setup?
Yes. All changes take effect immediately after saving. Users may need to refresh their browser to see updates.
Will my team see "Leenops" anywhere?
Not if you enable Hide Leenops Branding and Hide "Powered by", and set your Support Email and Documentation URL. The interface, login page, emails, AI assistant, help panel, and public share/booking pages all carry your brand. The only remaining reference would be in the URL if you haven't configured a custom domain.
Can I remove some sign-in buttons?
Yes — in the Login Page tab, enable only the sign-in methods you want (e.g., Microsoft only). At least one must stay enabled.
Can new users sign up on my domain?
No — registration on white-label domains is invite-only. Invite team members from Settings > Administration > Members; the invite email links to your domain under your brand.
Where do my users' support requests go?
If Support Email is set, to your inbox — under your brand. If not set, they go to Leenops support (with Leenops visible), so set it before onboarding end users.
Can I use my own subdomain?
Yes. Any subdomain works (crm., app., portal., hub., etc.). Multiple clients can use the same subdomain prefix (e.g., crm.clienta.com and crm.clientb.com) since they're different domains.
What happens if I visit the Leenops URL directly?
You'll see the standard Leenops interface. White-label branding only applies when accessing through your custom domain.
Can I add custom CSS?
Yes, via the Custom CSS field in the General tab. This is injected into the page and can override any styling. Note that certain unsafe CSS patterns (@import, javascript:) are automatically stripped for security.
Does the mobile app (PWA) get branded too?
Yes. When users install the app from your custom domain, the PWA manifest returns your app name, icon, and theme colors.

