Can I measure your visit?

With your permission, PostHog and Google Analytics record how you use this site, including a replay of the visit with anything you type hidden. Your questions to the AI agent and its answers go to PostHog too, and are deleted after 30 days. None of it is used for advertising. If you say no, nothing is stored on your device.

What's collected

Your browser asks sites not to track you, so this visit won't be measured: nothing is stored on your device. What's collected

Skip to content
Pedro Sant'Anna Brazilian product designer in London.

From leads to transactions

The GetNinjas fixed-price services home page on desktop, translated prototype: a search asking what you need done today and where, the ninja mascot in a hard hat laying bricks, quick suggestions, and a row of top-rated São Paulo services such as air-conditioner repair, bathroom accessory mounting and grab-bar installation, each with a rating and a Schedule button. Data is fictitious.
Screens show a translated prototype with fictitious personal and transaction data. The live product operates in Brazil.

GetNinjas is the largest services marketplace in Latin America, connecting individuals and businesses with trusted professionals in more than 500 service categories.

I led the product and design work on the new AI-Native Ecommerce Platform, which created a more reliable journey for customers and a more profitable business for professionals and GetNinjas.

About
Product Lead,
a hybrid role combining product design and product management
Me and two engineers
Reporting to the CEO,
and working with shareholders, the CFO, Principal PM, Head of Marketing and Head of Operations
From February to July 2025
(MVP) and from February to July 2026 (MLP)
Platforms
Mobile-first Web, App, WhatsApp Agent, and MCP

A lack of trust

For 14 years, GetNinjas ran on a simple model: customers posted service requests, professionals bought those leads, and negotiation happened off-platform.

Over time, this created lasting pain points:

  • Customers said “I don’t trust the pro”, “I had a bad experience” or “No one responded to my request.”
  • Professionals, meanwhile, paid for leads from clients who only wanted a quote or never replied.

In early 2025, a potential partnership with Redion (formerly Europ Assistance), Brazil’s second-largest insurance services provider, meant I was asked to cross-sell its services within the lead-gen flow.

But I realised the partnership could go further and tackle the business’s structural challenges…

What if…
we built
e-commerce
for services,
solving most of
our customers’
pain points?

Upfront fixed pricing, a service guarantee, platform-mediated advance payment, and scheduling at checkout.

To get stakeholder buy-in, I used AI to build a small, deliberately rough but fully working prototype in four hours. It proved the concept was technically feasible, simple to execute, and able to deliver value quickly within our existing acquisition-campaign journey.

The MVP's desktop booking page, 'Schedule a service': date and time slot, the service address with postal code, contact details, and a service summary for a leak repair with a 90-day warranty, instant scheduling and a fixed price of R$ 280,90.
The MVP's mobile service page for a leak repair: a plumber photo, a service selector, what is included, a note that parts are the customer's responsibility, and the fixed price with a 'Schedule now' button.
MVP website built in Feb ’25 with Vercel v0 and Cursor.

Designing the funnel

Once we had buy-in, I focused the MVP on validating the value proposition through the simplest possible funnel. After six months, with solid product–market fit signals, I shifted to creating a frictionless, reliable and remarkable experience, preparing the product to scale.

Find a service Check details Schedule Checkout Confirmation Service execution Post-service

MVPFocusing on product–market fit

Paid media Existing channel

Service page

Booking form

Gateway's UI Payment partner

Summary page

Provided by the partner

MLPFocusing on scaling the experience

Discovery Home, categories, search, agent, location by postcode or GPS, promo pages

Service details Scope, price, availability, customer reviews

Cart Multiple bookings, booking expiry, inline and social sign-in, saved address

Own checkout Pix and card, saved payment preference, designed to feel safe

Account Order tracking, support, profile

Tracking From the account

Rating CSAT, support

  1. Find a service

    MVP Paid media, existing channel

    MLP Discovery. Home, categories, search, agent, location by postcode or GPS, promo pages

  2. Check details

    MVP Service page

    MLP Service details. Scope, price, availability, customer reviews

  3. Schedule

    MVP Booking form

    MLP Cart. Multiple bookings, booking expiry, inline and social sign-in, saved address

  4. Checkout

    MVP Gateway's UI, payment partner

    MLP Own checkout. Pix and card, saved payment preference, designed to feel safe

  5. Confirmation

    MVP Summary page

    MLP Account. Order tracking, support, profile

  6. Service execution

    MVP Provided by the partner

    MLP Tracking. From the account

  7. Post-service

    MVP Provided by the partner

    MLP Rating. CSAT, support

Designing trust

After six months running the MVP, we had real behaviour data and customers’ own words. Interest was high, but parts of the journey still left people confused or unsure.

Customers didn’t think in the categories providers used to sell services. So I designed a service structure around customers’ problems, and made it the foundation for search, navigation, browsing and the agent. Customers could describe what they needed in their own words and find services available at their address.

GetNinjas mobile home asking 'What do you need done today?', with service category shortcuts, top-rated services in São Paulo and a location search bar.
Mobile discovery list separating customer-facing services (fridge repair, AC repair, shower repair) from broader categories, with a 'Services in São Paulo' search field.
Service page for 24-hour vehicle towing, with rating, São Paulo availability, a choice between 'I need it now' and 'Schedule', and pickup and destination fields.
Step 1 of 3 of checkout, 'Let's get started': an email field with Continue, plus Google, Meta and Apple sign-in options, under a 3-item cart total.
'Confirm appointments' screen showing an AC repair with its own date, address, promo code and conditions, followed by the subtotal, coupon discount and order total.
Bottom sheet asking 'When do you want the service done?' over the booking review, with 20 May selected on the calendar and the morning time window chosen.
Step 2 of 3, payment: a reservation countdown, a Pix or Card choice, saved cards, an instalment selector and a 'Pay R$ 718,15' button.
Step 3 of 3, 'All set, services scheduled!': an experience rating prompt, the booked AC repair with order number, date, address, preparation notes and a 'Track orders' button.

Collecting booking details was the biggest UI challenge: each service needed its own address, date, time, preparation and agreement, and the cart combined several in one payment. I turned every input into a chip that shows what you’ve picked and expands when you tap it, so customers only dealt with the detail they needed at each step.

Payment, which had been our biggest drop-off point, now happened entirely inside GetNinjas, with clear communication and fast access to previous preferences. Begin checkout to purchase conversion jumped from ~33% in the MVP to ~47% in the MLP, and average time on task fell from 322s to 131s (median 72s).

Screen recording of the desktop journey, translated prototype: from the services home to the home-services category, a 4-hour home cleaning added to a cart that already holds an AC repair, both appointments confirmed with their dates, address, coupon and conditions, payment by saved card, and the confirmation asking how the experience has been.

After payment, customers could come back to check the order’s status and scope, contact support and leave feedback.
The relationship of trust now had somewhere to live.

Orders screen filtered to Completed, showing an air conditioner repair with status, completion date, address, a service feedback prompt and a second order below.

Designing with AI

I led the adoption of an AI-assisted way of working, which I built with the two engineers. We used spec-driven development inside a shared monorepo, where product specifications, executable prototypes, issues and review evidence lived alongside the product. A harness connected the design system, Storybook, decision records, specialised agents and automated checks.

The two engineers owned production architecture, implementation and runtime quality, while I owned product direction, interaction design and design acceptance.

The main challenge was how can we overcome AI slop and build brand recognition and quality perception through the interface, while still benefiting from the speed of generative AI?

Hand-drawn wireframe sketches of the Home, Search and Service screens, annotated with notes on the floating search input, location popover, filters, service list and coupon pricing.

After trying several approaches, I found that quick hand-drawn wireframes worked best for setting the agents’ direction, and behavioural specifications and high-fidelity code prototypes made it precise. The harness tied them together.

The StateDebugger made the prototype easier for people to inspect. Product, design, engineering and stakeholders could open any route and switch conditions such as reservation expiry, anonymous identity and offline availability, without replaying the whole journey.

Harness-based Design System
Storybook for the harness-based design system: a sidebar listing components such as Accordion, Alert and AppAvatar marked Stable, beside an icon preview at sm, md and lg sizes.
Coded prototypes with StateDebugger
Coded desktop prototype of the services home, with the StateDebugger panel open over it to switch persona, scenario, cart, active order, geolocation and page status.
Synthetic personas
A synthetic persona test script in Gherkin: a direct login with an empty cart, where the persona tries to recover what she was going to buy, with the scenario steps and pass criteria.

Synthetic personas were a separate form of automated testing. Through a PostHog MCP connection, I brought behavioural data and session replays into the workflow, and aggregate data showed which behaviours recurred. I used that evidence to refine the personas and the tasks they attempted in the prototype.

The personas increased coverage but did not replace customer research or human review. The StateDebugger supported that review, while the repository kept decisions and evidence traceable even when features followed different paths. AI was part of how we built the product; the live customer journey did not rely on a model at runtime.

A new revenue stream,
with a stronger value chain

The rebuilt product brought discovery, booking, payment and account management together, with higher payment completion and a live, transaction-based revenue stream.

MVP Released in June 2025

+54%

Revenue per request above the lead-gen model.

+100

Services completed in the first month.

>45%

Sean Ellis score.

MLP Released in July 2026

~3.5×

Higher session-to-order conversion.

+21%

Qualified leads captured, through inline login and cart recovery.

72

Net Promoter Score.

Periods and traffic vary; figures are averages from the first months.

Key takeaways

Sometimes people need to see an idea in action before they believe in it.

Fixed-price e-commerce was an old idea at GetNinjas, held back by doubts about feasibility and effort. A quick working prototype won buy-in by showing it could be done.

Product metrics alone don’t reveal design problems.

Acquisition sources, previous visits and customers’ wider path to purchase helped me interpret intent and identify usability issues. That gave us more specific behaviours to measure when evaluating design changes.

How a product responds shapes how customers judge its quality.

Prototyping in code let us test loading times, touch response and transitions during design. These details add up to how smooth and well made the product feels.

Shipping faster can outpace your ability to learn.

AI let us ship new features before we had results from earlier releases. That pace risked growing the product faster than we could learn from it and adjust direction.

Avoiding AI slop starts with the thinking you do before prompting.

I lost time correcting decisions I’d left to AI, even when I knew what I wanted. Choosing a direction first and specifying those decisions gave the AI a clearer brief, while leaving it room to suggest alternatives.

Case GetNinjas

Pedro's agent

Expand chat

For real answers, email pedro@pedrosantanna.com