Deconstructing and Optimizing Product Search

Rebuilding Mira's Search Functionality for Core Use Cases

Makeup and skincare enthusiasts can invest a lot of time searching for products that work well with their skin, subscribe to their aesthetic preferences, and align with their values as a consumer. The goal of Mira's search functionality is to help a user find products that meet their specific wants and needs.

Search is a deceivingly complex beast. It’s one of those things where if it’s designed well it shouldn’t really stand out as a feature. As a platform and product that boasts search, our functionality needed to be on bar, if not exceed that of Google’s. This initiative sought to significantly improve the search experience and search results on Mira's platform.

This brief covers:


UI/UX Designer


October 2018 - May 2020


2 designers, 1 product manager


Design Research
A/B testing
UI/UX Design
Prototyping & Testing


Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

The Problem

Initially, we built Mira's search functionality to behave like most other product catalogues. You search a phrase like "foundation" or "Nars concealer", and we'd do our best to return product results whose name and title matched the search term. The search demonstrated some intelligence by being able to detect things like brand names and product categories and return relevant results. While this search mechanism was familiar and comfortable for users, we found that our click-through-rate from a search page to a product page was relatively low at 0.42 product clicks / search. As a beauty search engine, Mira had a high bar to hit given the fact that most people's primary search tool is Google. We needed to consider all the different ways in which people would search for products or brands in addition to all the different ways that people might search for a particular problem.

Our hypothesis was that users were not clicking into product pages because our search results were not fully matching their intent. We sought to double product clicks / search by better servicing various types of search intents and providing more relevant results.

Explorations: understanding search experience, intent and issues

We used qualitative and quantitative methods to better understand search intent was and how we could better address those needs.

Quantitative: With the help of our engineering team, we were able to sample and classify many thousands of searches. What we found was incredibly insightful:

  • 8% of searches were looking for products with attributes like "Vegan skincare", "Cruelty-Free makeup", or "Drugstore products"
  • 14% of searches were looking for a specific brand like "Nars", "Glossier", or "Thrive Causemetics"
  • 28% of searches were looking for a generic product category like "concealers", "foundations", or "moisturizers". These also included a minority of searches that had filters or specific needs right in the search itself: "Concealers for oily skin" or "glittery eyeshadows"
  • 54% of searches did not fit into any of the above, but the vast majority seemed to be spearfishing searches. These are searches that primarily seemed to be looking for a specific product: "Estee Lauder longwear foundation" or "Tarte Shape Tape Concealer"

Furthermore, we found that attribute, brand, and product category searches had a click-through-rate that was lower than the 0.42 average. Spearfishing searches, however, had a click-through-rate that was substantially above the average. This means that Mira performed well when people wanted to search a specific product (likely a query with a product name and brand).

Qualitative: To collect more data from "in the wild", we placed CTAs leading to surveys in-line with our search results to understand what issues our people were facing.

Survey CTAs

Additionally, we interviewed 8 people who had used Mira in a research sprint to understand precisely what the issues were with our various search types.

With our survey results and in-person user interviews, we found the following:

  • spearfishing: these searches, as suspected, were very high intent and demonstrated that users were typically looking to learn about a specific product. While these searches had stronger click-through-rate, the gaps seem to come primarily from products that were just missing from our catalogue.
  • attributes, brands, product category: these searches tended to be a bit more vague. Each of these types of search terms could produced many hundreds or thousands of relevant products. When digging into survey responses for relevant users or discussing in-depth with users in interviews, we identified one major insight: people cast a wide net by using broad queries like "best foundation" but the primary intention is to find well-characterized products that match their skin type/budget best. For example, when someone searches  "best foundations", they really mean:
I'm looking for a foundation that will work well for my dry skin. I prefer matte finishes and, ideally,  want a vegan, cruelty-free product. My budget is $30... but for a really, really good foundation I could splurge a bit more.
  • Another example- when someone searches "Nars", they really mean:
"I'm curious to see what the top rated Nars' products are... Are there any big-time community favorites? I hear they have good lip products, so I may also want to specifically look at those."

While specifics between attribute, brand, and product category searches differed, we identified the following top-level considerations to be some of the most critical factors for users while browsing through the product results for any of these types of searches:

  • compatible for skin type (good for oily skin or sensitive skin)
  • presence of specific product qualities (staying power or specific finish)
  • community favorites

Learnings: helping people find what they're looking for through spearfishing flows

In order to act on the findings above, our team took a two-pronged approach. For spearfishing searches, our data team worked to build feedback loops for manually adding products that appeared in failed searches. Over the next few months, we slowly saw click-through-rate increase to over 0.80 product clicks / search. For attribute, brand, and product category searches, we sought to better enable our users to drill down into more specific searches after performing their initial, top-level searches. While we already had standard filters at the top of our search results page, we saw an industry-standard engagement rate of about 9%. We needed something to that would do substantially better. We iterated on various form factors for helping users drill down after performing an attribute, brand, or category search.

Structured search iterations

Solutions: impact of our implementations

We ultimately decided to ship the following V1 of a structured search page showcased the following:

  • a search page header that clearly communicated to the user that we understood their query
  • tailored results for the top rated products, which presented the first 4 products of the previous search results experience
  • top products for your skin type (if it applied to the search -for some searches, like lipsticks, this is less relevant)
  • top products with various product qualities
  • community favorites (This would also present a great opportunity to personalize search results based on a user's skin type and a form-factor that would enable additional personalization in the future)

After shipping our V1 pages, we were beyond thrilled to see our click-through-rate on our attribute, brand, and product category nearly double. We found the top product section to consume over 60% of the clicks on those pages. The top products for your skin type and community favorites sections each accounted for about 20% of the clicks on the pages. The "product qualities" section garnered very few clicks - less than 2% of clicks. On our second iteration, we expanded the top products section to include 6 (as opposed to 4 products) and removed the product qualities section. This, in combination with our catalogue improvements to increase our spearfishing click-through-rate, brought our overall search to product page click-through-rate to 0.92, a 120% increase on our starting point of 0.42. Mission accomplished!

Personalization Quiz

Further Exploration

We continued testing and expanding on our work for search page improvements: We expanded our structured pages for attribute, brand, and product category pages to also include a broader set of community-generated topics from our Q&A section such as: "good for acne", "treatments for under-eye cirlces" and more. (link to Q&A) We developed product quizzes and integrated them into the search results of our product category pages. Our V1 seemed to get minimal engagement, strong click-through-rate, but low repeat-use rate. We did some additional iterations on the quiz to increase engagement rates to 10%.