virtual makeup try-on on WhatsApp
How to Run a Virtual Makeup Try-On on WhatsApp Without an App
WhatsApp is where Brazilian beauty shoppers already talk to brands. Here is how a photo-based virtual makeup try-on on WhatsApp works, what it takes to build one, and how to measure it.
Most beauty brands in Brazil already have a WhatsApp channel doing real commercial work: answering shade questions, recovering carts, sending launch news. What almost none of them have is a way to let the customer see the product on their own face inside that same conversation. A virtual makeup try-on on WhatsApp closes that gap — and it does not require an app, an SDK or a camera permission dialog.
This article explains how a photo-based try-on fits into a WhatsApp flow, what you need to build it, and which decisions matter before you write the first line of code.
Why WhatsApp is the natural channel for try-on in Brazil
Beauty conversations in Brazil happen in chat. A customer sends a message asking which foundation shade matches her, or whether a lipstick is too dark for daytime. The brand answers with text, sometimes a product photo, sometimes a link. The customer imagines the result — and often buys nothing, or buys and returns.
The missing step is visual. If the same conversation can accept a selfie and return that selfie with the product applied, the decision moves from imagination to evidence. No download, no new login, no learning curve. The customer is already in a thread she uses every day.
That is also why the channel is commercially interesting: WhatsApp is where your CRM already lives. A try-on image is a message you can send, tag and follow up on, not a session that disappears when the browser tab closes.
The constraint that shapes everything
WhatsApp does not give you a live camera feed. You cannot run a real-time mirror inside a chat. What you can do is receive a photo the customer sends and reply with a processed image.
That constraint is exactly why photo-based try-on works here and augmented reality does not. MaIA Try-On is built as a photo-in, image-out API: the customer sends a picture, the product is rendered on it, and the image comes back. There is no SDK to embed, no app to maintain, nothing to install. If you want a deeper comparison of the two approaches and when each one makes sense, we cover it in photo-based virtual try-on vs AR try-on.
How a virtual makeup try-on on WhatsApp actually works
The flow is short. Four steps, each of them something your team already knows how to build.
1. Trigger the try-on inside the conversation
The customer arrives at a product — from an ad, a link in a product page, a broadcast, or by asking the bot directly. Your flow offers the option: "Send a selfie and see this shade on you." Keep the instruction concrete: front-facing, good light, no filter, face uncovered. Clear guidance reduces the number of retries more than any other single thing you can do.
2. Receive and forward the photo
When the image arrives on your WhatsApp Business API provider, your backend picks it up and sends it to the try-on endpoint together with the product identifier you want to render. Nothing exotic: an authenticated HTTPS call with the image and the shade.
3. Return the rendered image
The API responds with the photo, product applied. Your backend sends it back as a message. In practice it is useful to send the result with a caption that names the exact shade — the customer will screenshot it, share it with a friend, and you want the product name to travel with the image.
4. Close the loop
The try-on image is not the end. It is the moment with the highest intent in the whole conversation. Follow it immediately with the add-to-cart link, a second shade suggestion, or a question. This is where a lot of implementations lose the sale: they deliver a nice image and then go quiet.
Calibrating palettes to your real products
A try-on is only persuasive if the rendered shade looks like the product that will arrive in the box. Generic color swatches produce pretty images and disappointed customers.
With MaIA Try-On, palettes are calibrated to each brand's real products inside a project. Lipstick is the easiest example to picture, but the principle is the same for any category you set up: the render references your SKUs, not an approximation. That calibration is the difference between a toy and a sales tool — and it is also what makes the resulting image safe to use in CRM, since the shade name you send is the shade you sell.
Pairing try-on with analysis and recommendation
A single selfie can do more than one job. The same photo the customer sends to try a lipstick can be analysed for skin tone and undertone, skin type and condition, and hair attributes — returned as structured JSON with a confidence per field by the beauty analysis API, which was trained on Brazilian skin.
That profile turns a try-on into a conversation with direction. Instead of "here is the shade you asked for", the flow becomes "here is the shade you asked for, and based on your undertone these two are also worth seeing". When you want that reasoning connected to your full catalog and running inside WhatsApp permanently, MaIA Beauty Advisor is the layer that reads the profile and recommends your own products — delivered as a project with the B4A team rather than as a self-serve API.
One note that belongs in every brief: this is a description of visible attributes in a photo. It is not a diagnosis and it does not replace a dermatologist or any professional. Write your bot copy accordingly.
What to measure
Define success before launch, not after. The metrics that tend to matter:
- Try-on completion: how many customers who are offered the try-on actually send a photo.
- Photo quality rejection: how often you have to ask for a second selfie. High numbers mean your instructions need work.
- Post-try-on conversion: add-to-cart and purchase rate for conversations that included a rendered image, versus those that did not.
- Shade-related returns and exchanges: the slowest metric to move and the most valuable one.
Run the first version on one category and a handful of SKUs. A narrow, well-calibrated launch teaches you more than a broad one.
Getting started
A photo-based try-on on WhatsApp is a small integration with a large effect on the part of the funnel where shade doubt kills the sale. You need a WhatsApp Business API provider you already have, a backend that can make an authenticated call, and a calibrated palette.
Create an account, get your API key and start testing in the MaIA API documentation, or talk to our team if you want your catalog calibrated and the WhatsApp flow designed with you.
Frequently asked questions
Do customers need to install an app to use a virtual makeup try-on on WhatsApp?
No. The flow is photo-based: the customer sends a selfie in the chat and receives the image with the product applied. There is no app, no SDK and no camera permission to grant.
Is this augmented reality?
No. MaIA Try-On works from a photo, not from a live camera feed. WhatsApp does not expose a real-time camera to brands, which is precisely why a photo-in, image-out approach fits the channel.
Will the rendered shade match the real product?
Palettes are calibrated to each brand's real products inside a project, so the render references your actual SKUs rather than generic swatches. Calibration is part of the setup, not an afterthought.
Can the same selfie be used for product recommendations?
Yes. The same photo can be analysed for skin tone and undertone, skin type and condition, and hair attributes, returned as JSON with a confidence per field. MaIA Beauty Advisor can then recommend products from your own catalog based on that profile.
How do we start testing?
MaIA Scan and MaIA Try-On are self-serve: create an account, buy credits and get an API key from the API documentation. MaIA Beauty Advisor is delivered as a project with the B4A team.