Turn your top support questions into explainer videos

See which questions your customers keep asking, then record a short avatar explainer for the ones actually worth answering on video.

App
HeyGenZendeskGoogle SheetsSlack BotCustomer SupportOperationsContent GenerationFeedback Triage
PromptCreate

Build me a studio app that my support lead opens every couple of weeks to decide which repeat customer questions deserve a short explainer video, and then makes those videos. It uses Zendesk for the ticket data, HeyGen to render the videos, Google Sheets as the video registry, and Slack Bot to tell the support team when a video is ready. Nothing runs on a schedule, everything happens when someone opens the app and presses a button.

The main view is a ranked board of recurring questions for a chosen time window. A window selector offers the last 14, 30, or 90 days, defaulting to 30. When the window is set, a handler pulls the tickets in that window from Zendesk using Search Tickets with a created-date query (paging through with List Tickets when I need the raw recent set), and also pulls the immediately preceding window of the same length so the board can show a trend. An embedded agent reads those tickets and clusters them into themes, naming each theme as the plain customer question behind it, for example "How do I change the card on file?" rather than a category label.

Each row on the board shows: the question, the ticket count in the window plus a bar showing that theme's share of total ticket volume, the trend versus the previous window (up or down with a percentage, or a New badge), a representative ticket (subject, requester, date, a one line snippet, and a link out to the ticket in Zendesk), a coverage badge that reads No video, Video ready, or Video out of date, and a Make explainer button. Sort by ticket count descending by default, and put a summary line at the top of the board: total tickets in the window, number of themes, and the percentage of ticket volume covered by an existing video that is not out of date. That coverage percentage is the number my support lead is really managing.

Persist themes with stable ids keyed to a normalized version of the question, so that ticket counts, exclusions, drafts, and attached videos survive a re-cluster and the board keeps its history across visits. When the agent produces a fresh cluster, match it back to an existing saved theme where the question is the same rather than creating a duplicate row. Cache the clustering result per window so opening the board does not re-run the agent every time, and give me an explicit Recluster button plus a visible "last analyzed" timestamp.

Clicking a theme opens a detail view showing every ticket in that cluster with subject, date, status and a link, the current script draft, the attached video if there is one, the registry entry, and the per theme controls: exclude this theme, mark the video stale, and re-record.

Pressing Make explainer starts a background agent in two stages. Stage one is the script: the agent reads the real tickets in that cluster and drafts a 45 to 90 second spoken answer script in plain language, covering what the customer is trying to do, the answer, the exact steps, and one caveat worth calling out. It writes the script back into the app as an editable draft attached to the theme, with the status Draft ready for review. Nothing renders at this point. The support lead reads and edits the script in the app, then presses Render.

Stage two is the render. The background agent calls HeyGen Generate Avatar Video with the approved script and the configured avatar and voice, then polls Retrieve Video Status / Details every 10 seconds until the video is completed or failed. Renders typically take 30 to 180 seconds, so show the theme row as Rendering with a live status and let the person keep using the board meanwhile; if the render fails, put the failure reason on the row with a Retry button. When it completes, call Retrieve Shareable Video URL and attach the video id, the share URL, the render date, and the exact script that was used to the theme row, flipping its coverage badge to Video ready.

On a successful render, append a row to a Google Sheets registry with Append Values, with columns for render date, question, ticket count in the window, window start and end, representative ticket URL, video id, share URL, and the script text. Read the registry back with Get Values to power a Video library tab in the app and to avoid appending a duplicate row for a video id that is already recorded. This registry is how other agents and teammates find the links to drop into macros and help center articles. Then post a note to the support channel with Slack Bot Send a Message containing the question, the ticket count that justified it, the share link, and a line telling the team to use it in saved replies and help center articles.

HeyGen share links expire after about seven days, so treat the video id as the permanent handle and refetch the share URL with Retrieve Shareable Video URL whenever the board or the video library renders a link, instead of trusting a stored URL.

Three nuances matter to me. First, let me exclude themes that should never get a video, for example password resets we deliberately handle in-product or one-off billing disputes; excluded themes drop into a collapsed Excluded section at the bottom, stay out of the ranked board and out of the coverage percentage, and can be restored. Second, mark an existing video as stale when its cluster spikes again after the video was made: store the theme's ticket count at the moment of render as a baseline, and flag the video as Video out of date when the current window's count exceeds that baseline by a configurable percentage, defaulting to 25 percent, with a manual Mark stale control as well. Re-recording a stale theme creates a new version and resets the baseline. Third, always show ticket volume per theme prominently, as a count and a share of total, so it is obvious which explainer is worth making next.

Give me a small settings view for the default time window, the HeyGen avatar and voice, the target script length, the registry spreadsheet id and tab name, the Slack channel, and the spike threshold that triggers staleness.

What does this prompt do?

  • Ranks the questions customers ask most in a time window you choose, with the ticket count for each one, a real example ticket, and whether volume is rising or falling versus the window before it.
  • Drafts a 45 to 90 second answer script from the actual tickets in each group, so you can fix the wording before anything gets recorded.
  • Records the explainer with an AI presenter and attaches the finished video to its question, so the board doubles as a map of which top questions are already answered on video.
  • Logs every video in a shared spreadsheet and posts a note in your support channel, so the team can drop the link into saved replies and help center articles.
  • Flags a video as out of date when its question starts spiking again, and lets you mark questions that should never get a video at all.

What do I need to use this?

  • A Zendesk account with access to your recent ticket history
  • A HeyGen account on a paid plan, with a presenter and voice you want to use
  • A Google account and a spreadsheet to keep the video registry in
  • A Slack workspace and a channel where your support team gets the finished links

How can I customize it?

  • Change the time window the board looks at, such as the last two weeks, the last month, or the last quarter
  • Set which questions should never get a video, and how big a spike has to be before an existing video is marked out of date
  • Pick the presenter, the voice, and the target script length, and choose which channel gets notified when a video is ready

FAQs

How does it decide which questions count as recurring?
It reads your recent tickets, groups the ones that are really asking the same thing, and ranks those groups by how many tickets fall into each. The biggest time sinks land at the top, with the ticket count and a real example ticket next to each one.
Can I edit the script before the video is made?
Yes. The draft is written from the real tickets and lands in the app as plain editable text. Nothing is recorded until you approve it, and recording usually finishes in a couple of minutes.
What happens if a question starts spiking again after we made a video?
The board marks that video as out of date, so you can see at a glance that customers are still asking despite having an explainer, and re-record it with the wording people are using now.
Can I stop certain questions from ever getting a video?
Yes. Any question can be excluded, which moves it into a collapsed section and keeps it out of the ranked board. You can put it back at any time.
Where do the finished videos live?
Each video attaches to its question inside the app, gets a row in your spreadsheet registry, and gets posted to your support channel. Share links from the video tool expire after about a week, so the app refreshes them every time you open the board.

Related templates

Review desk for portal forms your team still fills in by hand

Stage a batch of filings overnight, then approve each completed form from a screenshot before anything is ever submitted.

Kernel
Google Sheets
Slack Bot
App
Client-by-client cold email pipeline review for agencies

Pick a client and a date range to see sent, replies, meetings booked and the real deal value your cold email produced, campaign by campaign.

Instantly
HubSpot
Slack Bot
App
Audit what Intercom's Fin AI actually resolved before you pay

Review every conversation Fin closed as resolved, judge which ones actually stuck, and see what the gap is worth against your bill.

Intercom
Google Sheets
Slack Bot
App
One triage console for every Jira service desk queue

Merge your IT, HR and Facilities queues into one list ranked by SLA time left, then reply, change status and escalate without ever opening Jira.

Jira Service Management
Jira
Slack Bot
App
Returns and warranty claim desk that follows your policy

Work every return, damage and warranty claim in one queue, with the order, the delivery date and a policy-backed recommendation already on screen.

Kustomer
Shopify
Google Sheets
App
Run your Webflow site translations from one review desk

See every page's translation status at a glance, edit translations side by side with the English, and publish only what your team has actually approved.

Webflow
JigsawStack
Slack Bot
+1
App

Stop answering the same support question over and over.

Build the board that shows which repeat questions are worth a video, then makes the video for you.