Triage and fix Algolia searches that return no results

By General Input

Work through the searches your customers ran that came back empty, fix each one with a synonym or rule, and confirm the fix actually worked before moving on.

Integrations

  • Algolia
  • Google Sheets

Type

App

Categories

  • Operations
  • Marketing

Build me an app for triaging dead-end searches in Algolia, where I actually fix the failing search and confirm the fix worked instead of just being told about it. It is a workbench I open and work a queue in, not something that runs on a schedule.

The app opens on the queue. At the top, an index picker listing the indices in my Algolia application (List Indices) and a date range picker that defaults to the last 7 days. The queue below lists the search terms that returned zero results in that range for the selected index, ranked by how many people searched them (Analytics: Top Searches with No Results). Each row shows the query text, the number of searches, and its current status. Note that Algolia's analytics API lives on a different host from the search and indexing API (analytics.algolia.com), so the queue and the live search in the detail pane are talking to different hosts.

Clicking a query opens a detail pane. The pane immediately runs that exact query against the selected index as it stands right now (Search Single Index) and shows me the hit count and the top hits, so I can see what a customer actually gets today. Let me edit the query text in the pane and run loose variants without leaving the row, dropping a word, trying singular or plural, trying an alternate spelling, so I can find the wording my catalog does use before I decide on a fix. Show me how the term compares against my overall search volume too (Analytics: Top Searches), so I know whether I am fixing something popular or something niche.

Before showing me the fix controls, show me what already exists for that term: the synonyms in the index that mention it (Search Synonyms) and the query rules whose pattern matches it (Search Rules). I create duplicate synonyms constantly when I cannot see the existing ones, so put these first in the pane and say plainly when something already covers the term.

Then let me fix it inline, two ways. A synonym that maps the customer's word to the word my catalog actually uses (Save Synonym), and a query rule for more targeted behavior on that specific term (Save Rule). Both write to the currently selected index.

The verify loop is the part that matters most, so build it carefully. Right after I save a fix, the pane re-runs the same original query against the index and shows me the hit count before and after, zero going to something. Algolia's writes are asynchronous and return a task id rather than applying instantly, so allow a brief settle before re-querying rather than re-querying the moment the save returns, and if the count is still zero, retry a couple more times with a short gap before telling me the fix has not landed yet. Never report success on the basis of the save call succeeding. Only report success when a re-run of the query genuinely came back with hits, and show me the number it came back with.

Every applied fix appends a row to a Google Sheets change log (Append Values) with the date, the index, the query, the fix type of synonym or rule, the detail of what was saved, the verified hit count after the fix, and who applied it. Show a panel of recent log entries inside the app as well (Get Values), because this audit trail of relevance changes is something Algolia does not give the team anywhere else.

Let me clear the queue down. Each query can be marked resolved once it is fixed, or ignored forever for the bot noise, gibberish and junk queries I never want to see again. Persist this per index and query in the app's own storage so it survives reloads and applies for everyone on the team, and keep ignored queries out of the queue for every future date range, not just the one I am looking at. Give me filters to view open, resolved and ignored queries separately, with the open queue as the default view.

The Algolia connection needs an Admin API key, since saving synonyms and rules are write operations and a search-only key will be rejected.

Related prompts

Explore more prompts
Call overdue Xero customers with an AI collections agentLocal listing health board for every location you manageLet support send one-off Loops emails without an engineerStop cold emails to anyone with a live deal in PipedriveiMessage campaign console with pre-flight checks and delivery boardLinkedIn Ads budget pacing dashboard for every client accountFront desk appointment confirmation board for the next 3 daysGive your team Looker numbers without buying more seatsBuild audience segments from product usage and push to LoopsTurn the people who engage with your posts into Pipedrive leads