If you're still in the initial setup phase (slug, hours, team, first services), it's worth starting with the companion guide: Set up your public BookHero page. This article assumes the page already exists and focuses on what makes the difference afterwards: the visual layer and how clients move through your service list.
Most visitors look at your page for under 30 seconds. In that time they decide three things: 'does this look trustworthy?', 'can I find what I want?' and 'can I book without friction?'. Logo, cover, color and service order answer the first two. Worth doing right.
Where you actually edit all this
Everything in this article lives at /dashboard/storefront. You'll find an editor with four tabs: Services, Products and add-ons, Customization (logo, cover, color, name, phone) and Address. At any time you can preview the real public page by opening bookhero.app/your-slug in another tab.
Logo: the trivial-looking detail that isn't
The logo appears in three places: in the circle over the cover, in confirmation emails sent to the client, and in the shareable QR code. If you don't have a formal logo, you can leave the business initial (the system auto-generates a circle with the first letter of the name). Better than uploading a low-quality logo.
Go to Customization > Logo
Click the area showing the initial (or the current logo) to open the file picker. Accepts PNG, JPG, WebP, GIF, up to 4 MB.
Crop in the modal
After choosing the file, a crop modal opens. Pan and adjust so the logo sits centered in a square. This prevents weirdly-cropped logos inside the circle.
Confirm and save
Hit 'Apply' in the crop modal. The file stays in local preview. Only when you click the green 'Save' button at the bottom does the logo actually publish.
Cover: the photo that sets the tone
The cover (banner) is the big horizontal strip at the top of the page, behind the logo. It's the largest image area and it's what appears in the link preview when you share on WhatsApp or Instagram. It can make or break the first impression.
| Cover | Why | |
|---|---|---|
| Generic stock photo | Feels like a template and lowers trust on the spot | |
| Real photo of the space, well lit | Shows you actually exist, builds trust in seconds | |
| Selfie with client in busy background | Distracts from the business name and the booking buttons | |
| Photo of finished work (haircut, manicure, tattoo) | Shows the result and justifies the price before they book | |
| Image with text overlay | Clashes with the business name that already sits on top | |
| Horizontal photo, at least 1600x600 px | Renders sharp on mobile and desktop with no awkward cropping |
Brand color: hex, palette, contrast
The brand color applies to primary buttons ('Book', 'Confirm'), section titles and small accents like active icons. Technically, it's injected as a CSS variable (--pub-accent) and propagates through the whole public page and booking flow. It accepts any 6-digit hex (#RRGGBB), but the editor shows a 26-color palette chosen for working well as buttons.
| Sector | Good color | Color to avoid |
|---|---|---|
| Classic barbershop | Black, slate, walnut | Pastel pink |
| Beauty and spa | Pastels (mint, lavender) | Vivid red |
| Tattoo | Black, red, magenta | Pastel peach |
| Physiotherapy / health | Teal, royal, emerald | Magenta, hot pink |
| Nails and nail art | Pink, lilac, pastel rose | Walnut brown |
| Unisex hair salon | Sage green, slate | Pure gold yellow |
Name, description (tagline) and phone
The name appears in large letters right under the logo. It's also what goes into the browser tab title, confirmation emails and the JSON-LD that Google uses to index the page. Keep it short (under 30 characters), no emojis, and properly capitalized ('Maria Hair Studio', not 'maria hair studio' nor 'MARIA HAIR STUDIO').
The tagline is the line directly below the name. In BookHero, that line defaults to your formatted address (the address you picked). If you'd rather a more commercial tone ('Cuts, color and hair care · Cascais' instead of '22 Rua das Flores, 2750-220 Cascais'), edit the description field.
| Name | Why | |
|---|---|---|
| Maria Cascais Beauty Salon Ltd | Too long, wraps on mobile and hurts SEO | |
| JOÃO'S BARBERSHOP | All caps shout and feel less professional | |
| ✂️ Maria 💇 Hair ✨ | Emojis break SEO and ruin readability on a business card | |
| Maria Hair Studio | Three words, reads at a glance, signals the sector | |
| João's Barbershop | Natural capitalization, easy to share by voice |
The public phone is separate from your own user phone. It shows as a 'Call' button on the page and in confirmation emails. If your business only takes online bookings, leave it empty and the button disappears automatically.
Service order (the part that moves conversion)
The service list is what the client scans before clicking 'Book'. The order of that list makes a real difference in conversion. Simple rule: what you want to sell more, on top. Instead of ordering by price or alphabetically, order by client intent.
List your services by revenue
Look at the last 90 days: which services generated the most revenue? Don't confuse with volume - sometimes a high-volume, low-price service deserves second place and a premium one belongs first.
Put the 'anchor service' first
It's what defines your business: cut for a hairdresser, manicure for beauty, massage for physio. It's what new clients come looking for.
Right after, the most common companion
Cut + beard for a barbershop. Manicure + pedicure for beauty. Assessment + first session for physio. The natural pair lowers friction.
Hide what's temporarily paused
Got a seasonal service (hair extensions, laser hair removal closed for holidays)? Use the 'hidden' toggle instead of deleting it. Bring it back when you offer it again.
Hide what you never wanted to sell online
Very long services or ones that need prior assessment ('extensions with consultation', 'large custom tattoo') stay cleaner as 'by request' outside the page, handled over WhatsApp.
Save and open the page on mobile to check
Mobile view is different from the editor (narrower, vertical scroll). Something that looked aligned in desktop can feel cramped. Worth the minute.
Service groups: when to group and when not to
If you have more than 7-8 services, grouping them into sections helps clients find things faster. Groups are named sections (Hair, Beard, Manicure, Pedicure) that appear as headers before the matching list. Each service can belong to one group, or stay ungrouped (it then appears at the bottom, with no header).
| Scenario | Recommendation |
|---|---|
| You have 3 to 6 services, all of the same type | Don't group. Show a plain list. |
| You have 8+ services, all of the same type | Don't group yet. Reorder by intent. |
| You have 6+ services across different areas (hair + beard + nails) | Group. Cuts the mental scroll. |
| You have many add-ons (shampoo, mask, extra blow-dry) | Put them in Products and add-ons, not services. |
| You have 2 groups with 1 service each | Kill the groups. 2 headers for 2 lines is not worth it. |
Products and add-ons: what fits there (and what doesn't)
The Products and add-ons tab is for things sold on top of a booking, not for the main service. Two types: 'addon' (an add-on tied to a service, like an extra hydrating mask) and 'product' (a standalone product, like a bottle of shampoo). Not to confuse with hidden services.
- Addon: mask, oil, extra blow-dry, hot towel. Added at checkout on top of the base service.
- Product: shampoo, styling gel, hand cream, candle. Can be sold without an attached booking.
- Don't put full services here. That's what the Services tab is for, with duration and an assigned employee.
Mobile first: 60-70% of visitors
Between 60 and 70 percent of your page visitors will come in via mobile - straight from Instagram, WhatsApp, Google search. The page is fully responsive, but there are decisions on your end that make the mobile experience better or worse.
Slug: think twice before changing
The slug is the part of the URL after bookhero.app/. It's the one customization piece we recommend you don't change after sharing with clients. Every printed QR code, Instagram link, business card and Google Business reference will stop working if you change it.
Common errors and how to fix them
I uploaded the logo but the public page still shows the initial. Why?
You likely uploaded the file and closed the editor without clicking the green 'Save' button at the bottom. The editor uses a unified save: until you hit Save, everything is local preview. Go back in, redo the upload and scroll down to Save.
The brand color I picked looks different on the public page.
Likely browser cache or CDN cache. Force-refresh (Cmd+Shift+R on Mac, Ctrl+F5 on Windows). If it persists, try an incognito window. If it still looks off, reopen the color picker and double-check the hex - pastels and vivid tones can look similar but have very different contrast depending on the screen.
I changed the service order and the public page still shows the old order.
Public-page cache takes a few seconds to refresh (up to 60 on some CDNs). Force-refresh once or twice. If it's still stale after 2 minutes, confirm you hit Save. If yes, open an incognito window to bypass browser cache.
Can I hide a service without deleting it?
Yes. Each service has a 'hidden' toggle. When active, the service disappears from the public page but stays available for manual bookings in the calendar and keeps full history. Useful for seasonal or experimental services.
Google or WhatsApp shows the wrong preview image when I share the link.
WhatsApp and Google cache the cover (banner) or logo image, and that cache can take days to refresh. If you just updated and want to force it, use the Facebook/WhatsApp URL debugger and paste the link so their servers re-fetch. For Google, the BookHero sitemap+JSON-LD uses the logo, but first indexing takes time.