Branding and white-label

Last updated July 7, 2026 · Operators

The portal is fully white-labeled. Your customers should see your brand, not ours. Out of the box, the portal renders neutrally (no LandscapingSoftware logo or “Powered by” text); when you upload your assets and pick your colors, every surface uses them.

This page covers what you can customize, file format limits, the per-customer access toggle, and how document sharing works.

What you can brand

Surface Where it shows What you control
Header logo Top of every portal page PNG/JPG/WebP, ≤ 2 MB, ≥ 240px wide recommended
Favicon Browser tab icon, bookmarks PNG only, ≤ 500 KB, 32×32 or 64×64
Primary color Buttons, links, accents Hex (e.g. #2e7d32)
Accent color Secondary accents Hex
Browser tab title <title> and share previews Text, ≤ 120 chars
Meta description Share previews on social media Text, ≤ 300 chars
Tagline Optional line under logo Text, ≤ 255 chars
Login headline Big text on login page Plain text
Login subtext Paragraph above the email form Plain text
Login button label “Send me a login link” by default Plain text, ≤ 60 chars
Login help text Small print under the form Plain text
Login footer Footer line on login page Plain text
Admin app nav logo Replaces our logo in your admin app’s nav bar PNG/JPG/WebP, ≤ 2 MB
Admin nav dark variant Optional dark-mode alternative Same

A live preview of the login page updates as you type in Settings. Save the form to push changes live.

File format rules

  • PNG, JPG, WebP for logos — that’s it
  • PNG only for favicons
  • SVG is rejected. SVG files can contain executable JavaScript and we won’t accept that risk. The system content-sniffs the file (not the extension) so renaming an .svg to .png doesn’t sneak it through.
  • Files over the size cap are rejected before they’re stored

If your logo is huge, resize it before uploading. There are free tools online; aim for under 500 KB to keep portal pages fast.

What happens if you don’t brand anything

The portal still works. It renders in a neutral look — plain text company name in the header, default font, neutral gray accent — but never with our logo or any “powered by” mention. Your customer never knows what platform you use unless they go digging in browser dev tools.

Color rules

  • Hex values only (#abc, #aabbcc, or #aabbccff)
  • A bad value is rejected with a clear error — you can’t break the layout with malformed input
  • The text color shown on top of your primary color is computed for you to meet WCAG AA contrast — so even bright yellows and pale pastels stay readable

Login page text — plain text only

The login page text fields accept plain text. If you paste in HTML (or someone pastes a <script> tag at you), it’s stripped server-side before being saved and re-escaped before being rendered. Your customer cannot be XSS’d through your login page copy.

Per-customer portal access

Branding is set company-wide. Access is per-customer.

Open any customer record in the admin app and flip Portal access enabled on or off. When off, the customer can’t sign in — their password is rejected and any request to reach the portal is turned away. When you flip it from on to off mid-session, the customer is signed out immediately at their next request.

Use this for customers who:

  • Aren’t tech-savvy and prefer paper invoices
  • Have churned but you don’t want to delete the record
  • Need to be temporarily blocked (billing dispute, etc.)

You can also see, on the customer record, when they last logged in (Portal last login). If it’s been six months and you’re wondering whether they’re using it, that’s how you check.

Document sharing

Customers cannot upload anything to the portal. Everything they see is something you flagged for them.

Wherever you create or attach a document in the admin app — mail merge runs, contracts, customer file attachments — the same screen has a “Show in portal” checkbox. Check it, and that document shows up in the customer’s Documents tab. Uncheck it (or click Revoke on the customer’s Portal Documents sub-tab) and it disappears from their portal immediately. The underlying file is never deleted by this — only the visibility flag.

A few notes:

  • Default visibility is off. You actively choose what’s shared. If you’d rather have it pre-checked on each save, flip Document defaults → Pre-check “Show in portal” by default in Portal Settings.
  • The customer’s Portal Documents sub-tab shows you what they can see right now, plus when they first viewed each document and how many times.
  • Invoices and estimates have their own dedicated sections in the portal (Invoices and Estimates tabs) — they don’t appear in Documents to avoid duplication.

See Security and privacy for why we’re cautious about uploads.

This is a small but nice touch — replace the default logo in your team’s admin app navigation with your own. Same upload mechanism. Optional dark-mode variant if your team uses a dark theme.

Your team sees your brand every day. We’re invisible until something breaks.

Put it to work in your own account

14-day free trial · No credit card required