Pet Health Scan Suite
UX DesignerConsumer AI / Mobile Web

Pet Health Scan Suite

Finding out why pet owners abandon an AI dental scan, across around 15 white-label health-check tools on around 10 pet-brand websites.

The Pet Health Scan suite, several tools across brands
Several tools across brands
Role
UX Designer, working alongside a senior designer
Timeline
May 2025 to September 2026, part-time alongside other projects
Team
1 senior designer · 5 frontend · 2 backend · 2 QA · 1 DevOps
Platform
Mobile first, also used on tablet and desktop
Context

What it is. A white-label suite of AI health-check tools that pet brands embed on their own websites. There are tools for teeth, skin, weight, fleas and more. A pet owner takes a photo of their dog or cat, answers a few questions, and gets a plain-language result with next steps.

What it's for. Guidance, not diagnosis. The tools help owners spot problems early and decide whether to see a vet. They don't replace one. For most people the flow ends at the result. Signing up and chatting with a live vet are there, but secondary.

Who uses it. Pet owners who find a tool on a brand's website, mostly on their phones.

Where it's built. The tools are built and branded in SDK Manager, the internal no-code platform in my other case study. The tool is ours to change. The brand's website around it is not.

At a glance
88%
left before even uploading a photo. I designed a way to find out why.
3 → 1
pages for a 10-outcome result, now readable on one card.
< 2 min
to re-skin a tool for a new brand, down from about two days by my estimate. I re-skinned 12–13 tools this way.
How a scan works
Landing page→Start→Take or upload a photo→Answer questions→Result

A tool only helps if someone gets to the end. An owner who leaves partway gets no result and no guidance.

My role

The senior designer owned the client relationship, the research, and the base flow every tool shares. I worked within that flow. My own work was:

  • the drop-off investigation, from hypotheses to shipped feedback forms
  • the immunity check's decision tree and results redesign
  • UI changes across tools, and one new tool
  • developer specs
  • font naming and brand libraries for theming
01 · Why people left the dental scan

What the data showed

Step
People
From previous
Viewed the page
44,749
Started the tool
6,780
15%
Tried to upload a photo
813
12%
Photo upload succeeded
624
77%
Reached the last tracked step
583
93%

The 189 uploads that failed (23%) were photos the AI rejected, because they didn't follow the photo instructions or weren't the right kind of image. Once a photo was in, almost everyone finished. The analytics showed where people left, but not why.

Funnel from the analytics dashboard
Funnel from the analytics dashboard
85% of visitors never started. This happens on the landing page, before the tool.
88% of people who started left before trying to upload a photo. This happens inside the tool, and it's the one this work focused on.
02

Six assumptions

Every reason I could think of for the drop.

01The dog isn't there
The owner opens the tool when their pet isn't around.
02Hesitation to share a photo
Owners aren't sure about sending a picture of their pet to an AI.
03The benefit isn't clear
Owners don't see what they'd get out of the scan.
04The purpose isn't clear
The page explains what the tool does, not why it matters.
05It doesn't feel necessary
Owners think they can check their dog's teeth themselves.
06The Start button is hard to find
On the landing page, disclaimers and secondary text push Start below the fold.
03

Four ideas, one kept

I designed a fix for each group of guesses. Three were mocked up and set aside: one parked, two dropped.

Parked

A reminder email

Aimed at: The dog isn't there, the owner is busy, or they were only exploring.

When someone leaves at the photo step, let them enter an email and a time to be reminded to finish. Storing emails needed a new backend database, connected to every brand. Too much build for a guess.

Parked: reminder email
Dropped

Banner redesign

Aimed at: Benefit and purpose of the tool unclear.

A problem-led headline ("Is your dog one of the 8 out of 10 with oral health issues?"), a clear Start button, and a supporting stat from the brand's own site. The banner belongs to the brand, and we couldn't change it.

Dropped: banner redesign
Dropped

Landing page redesign

Aimed at: Tool not necessary, Start hard to find.

Start moved into the first screen, copy reframed around catching problems early, disclaimer moved lower. Each brand owns its landing page. It couldn't be changed from the tool's side, and 10 brands wouldn't all agree to the same change.

Dropped: landing page redesign

So the fourth idea was to ask first

Each of these bet on one guess being right, and each needed either new backend work or sign-off from every brand. So the fourth idea was to find out which guess was true first, with something that fit inside the tool.

Why ask instead of fixing the screens? Reviewing the existing pages did turn up a visible problem: the buried Start button. But that sits on the landing page, before the tool. The drop inside the tool could be practical, like the dog not being nearby, or about trust, like unease with an AI reading a photo. Looking at screens can't tell those apart. A one-question form inside the tool could, and it didn't need any brand's sign-off.
04

What I designed

Two short forms: one when someone leaves partway through, and one when they finish.

When they appear. The leaving form appears when someone taps the tool's close button, navigates away, or closes the browser tab on desktop. The finishing form appears after a scan is submitted, on selected result screens, or while browsing Additional Resources.

Not asking twice. Each person sees the form once per session. It only returns if their cookies are cleared or expire, and the cookie duration can be configured per brand.

Exit form and completion form
Exit form and completion form

Leaving partway: one question, seven one-tap reasons

The same form appears wherever someone leaves. The client's legal team set the seven reasons, so the wording isn't mine. I designed the form around them and mapped each reason to the guess it tests.

Reason (set by legal)
Tests my guess
My dog isn't available right now
Dog isn't there
I'll try this again later
None. New: timing
It's too difficult to take a clear photo
None. New: photo is hard
This isn't what I was looking for
Purpose isn't clear
I have questions about the AI's accuracy
None. New: trust in the result
I'm not comfortable with AI dental analysis
Hesitation to share a photo
Other
Anything else
Not a perfect match. Three of my guesses aren't on the list: the benefit isn't clear, it doesn't feel necessary, and Start is hard to find. Those mostly play out on the brand's landing page, before anyone reaches the form. Legal's list added three reasons I hadn't considered, which widened what the form could learn.

Finishing

A star rating, then one question whose options depend on the rating: short statements for 1 to 3 stars, more detailed ones for 4 to 5. The comment box is optional.

Cheap to answer, easy to leave

  • One question, one tap, no answer selected by default.
  • Skip & Exit sits next to Submit.
  • The form closes in one click.

Result

The forms shipped in August 2026. I moved off the project the following month, before enough responses had come in, so I don't have the results. Success was to be measured by how many people answer instead of skipping, and by which reasons come up most. Before I left, I set out what each leading reason should lead to, in some cases back to an idea that was dropped:

  • "My dog isn't available right now" or "I'll try this again later" → the parked reminder email, this time with evidence to justify the backend work
  • "It's too difficult to take a clear photo" → better photo guidance before the upload step, which would also cut the 23% of uploads that get rejected
  • "This isn't what I was looking for" → the banner and landing page copy
  • AI accuracy or comfort → clearer explanation of how the AI works and what it's for
This is the plan I handed over, not an outcome.
05

Making a 10-outcome result readable

Most scan tools follow one path. The immunity check's result depends on several answers: sex, neutered or spayed, pregnancy or breeding plans, and existing symptoms.

Those combine into ten possible results. The result is where an owner learns what's going on with their pet, what to do about it, and whether to see a vet. Each result was written as long paragraphs spread across three swipeable pages. Nothing stood out, and anything on pages two and three was easy to miss.

Mapped the logic. I drew the full decision tree, every combination of answers and the result it leads to, so the branching was explicit for developers and QA.

Immunity-check decision tree
Immunity-check decision tree
Try 1

Labels, still across three pages

Bold labels on each tip (Consultation, Vaccines, Diet) made points easier to find, but owners still had to swipe through three pages.

Considered: three swipeable pages with labels
Try 2

One card per tip, one scrolling page

No more swiping, but the client didn't want scrolling on result screens. Every other tool shows results as carousel cards, and they wanted this one to feel the same.

Considered: single list
Single list
Considered: separate cards
Separate cards
Final

Everything on one card, no scrolling

The content had to fit one card. I kept the key tips with bold labels, put the vet consultation tip first, and linked the full list of tips on the brand's website. Drag to compare.

After: one card
Before: three swipeable pages
Before · 3 pagesAfter · 1 card
3 → 1

pages per result

Shipped. Each of the ten results now fits on one card instead of three pages. The layout was chosen with the client, within the client's carousel format.

It wasn't tested with pet owners.
06

Re-skinning a tool for a new brand

Each tool runs on around 10 brands, each with its own colours and fonts. Re-skinning a tool's design files for another brand meant changing colours and text styles by hand, which I estimate took about two days per tool.

  • Consistent names. Colour roles follow the client's fixed mapping. I named the font styles so every tool uses the same names for the same roles.
  • One library per brand. Each brand's colours and fonts live in one Figma library. Swapping the library re-skins a whole tool at once, because the names match across brands.
Brand library: type and colour
Brand library: type and colour
Brand A
Brand A
Brand B, same tool after a library swap
Brand B, same tool after a library swap

Brands with one colour

Some brands supplied a single colour. I generated a full set of tints from it with a plugin, so every colour role in the tool was still filled.

< 2 min

Setting up a new brand's library takes 10–15 minutes, to define its font styles and colours. After that, re-skinning a tool's design takes a minute or two instead of about two days, and the same library re-skins every tool.

Used for real. I re-skinned 12–13 tools this way, across 3–4 brands.

Tints generated from a single brand colour
Tints generated from a single brand colour

Other work on the suite

  • Multi-photo errors. One tool needs three photos from different angles, so I designed an error for each photo that points to the one that failed.
  • Developer specs. For my screens, and one new tool built on the existing flow.
Per-photo error states
Per-photo error states
Developer specs across breakpoints, mobile to desktop
Developer specs across breakpoints, mobile to desktop
Developer specs
Developer specs