Source: https://www.revvly.ai/docs/guides/support-ai

Guide

# How the *AI first line* works.

The AI answers a customer first, from your knowledge base and your team’s guidelines only, with its sources shown. If it cannot answer well, it steps back and a person takes over. This guide explains when it answers, when it stops, how to switch it off or cap it, what counts as a billable resolution, and how to compare it with Intercom’s Fin on your past conversations.

## [#](#answers)What it does

When a customer opens a request or writes a new message, the AI looks for passages in your knowledge base that match, and writes a short answer using only those passages and the [guidelines](https://www.revvly.ai/docs/guides/support-guidelines) your team wrote for that customer: the tone to take, context the articles leave out, when to ask a question first and what to leave to a person. Under the answer, the customer and your agents see the articles it used (the title, a link and the section); guidelines are never shown. In the inbox its messages carry an AI badge, and the ticket’s Details say whether the AI is answering, has handed over, or is off.

Two messages sent close together produce one reply, not two. The customer does not wait for it: the request is saved first and the answer follows.

## [#](#audience)Who sees which article

Which articles the AI may use is decided before it writes anything, never by the AI. The search is limited to your workspace and to articles open to the customer’s roles and plan. Their roles are worked out when the AI answers, from the role value and attributes on their profile and your roles’ current rules, so a change to a role applies at once; a customer can have several. The plan is the one on their profile. A customer who matches no role only gets articles open to everyone. Setting these up is covered in [Build the knowledge base](https://www.revvly.ai/docs/guides/support-knowledge#audience).

## [#](#when)When it answers and when it stays out

The AI answers a ticket only when all of these hold:

- The AI switch is on for the workspace, for the ticket’s type, and for every role the customer holds (a role can be set to send its people straight to your team).
- The ticket is not closed and has no assignee.
- No agent has replied to the customer in public.
- The AI has not already handed this ticket over.
- It has answered fewer than six times on this ticket.
- The day’s AI spending cap, if you set one, has not been reached.

As soon as an agent takes the ticket or replies, the AI stops for that ticket, so it never talks over a person.

## [#](#handover)Handover

The AI says nothing rather than guess. It hands over in these cases:

- **Nothing answers it**: No article the customer may read matches the question and no guideline covers it, or the AI judged they do not answer it.

- **A guideline says so**: A handover guideline names the question as one for your team. See [Write guidelines](https://www.revvly.ai/docs/guides/support-guidelines#types).

- **Not backed by a source**: A draft that cites nothing is never shown.

- **It could not run**: The search or the AI failed.

- **Spending cap reached**: The day’s AI spend hit your cap.

- **Six replies already**: The most the AI may send on one ticket.

- **The customer asks**: The customer can ask for a person at any time, or mark an answer Not helpful.

When it hands over, three things happen once. The customer is told, in the same words whatever the reason: “I could not answer this from our help articles. A person on the team will pick it up and reply here.” An internal note records the reason for your agents. The ticket’s history gets a handover event and its AI status becomes Handed to the team.

**Handover is sticky.** The AI does not answer that ticket again, even if the customer writes again, unless a person switches it on for that ticket (see below). Nobody is assigned automatically: the ticket waits in the Unassigned view like any new ticket, and agents are not yet notified of a handover, so check that view.

**Keep the AI answering beside your team.** Normally the AI stays out of a ticket once someone is assigned, an agent has replied in public, or it has handed over. For a chat where you want both, turn on **AI replies too** in the ticket’s header (it is not shown on a closed ticket). The AI then keeps answering the customer’s messages on that ticket. Everything else that stops it still applies: a ticket type with the AI off, the daily spending cap, six replies on one ticket, and answers it cannot ground in your articles. Turning the switch on or off is recorded in the ticket’s history as an internal event; the customer never sees it. It is off by default on every ticket.

## [#](#guardrails)Guardrails

- It answers only from the articles and guidelines it is given. If they do not cover the question it says nothing and hands over; it does not fill the gap from general knowledge.
- Articles and customer messages are treated as data, never as instructions; only the guidelines your team writes are followed as instructions. A message asking it to change its rules or reveal them is ignored.
- It cannot see or change anyone’s account and cannot take actions. For an account-specific problem it says a person will need to look.
- Answers are short and plain, with no greeting or sign-off, in the customer’s language.
- Every answer carries its sources, and one with none is not sent.
- Role and plan limits are applied by the search, so an article a customer may not read is never given to the AI for that customer.

## [#](#switches)Switches and the spending cap

Where: Org Settings > Support > General > AI answers first. Admins and owners. On by default for the workspace.

Where: Org Settings > Support > Ticket types & workflows > Edit a type > AI answers this type first. Per type. The list shows each type's setting in the AI answering column. Turn it off for types such as an issue report where you always want a person first.

Where: Org Settings > Support > General > Limit daily AI spend. Admins and owners. Enter USD per day, from 0 to 100,000.

With the workspace switch off, the AI neither answers nor writes titles and summaries. The spending cap counts everything the AI costs, answers, titles and summaries together, per UTC day. When it is reached, new tickets go straight to agents until midnight UTC. There is no cap until you turn one on.

## [#](#billable)What counts as a billable resolution

Only a resolution the AI achieved on its own is billable, and there are exactly two ways one is recorded:

- **Confirmed**: The customer marks an AI answer as solving it. The ticket closes as Solved by AI. This only works while the AI still holds the ticket: not after a person replied, the ticket was assigned, the AI handed over or the ticket closed.

- **Assumed**: The AI answered, no person replied in public, nobody is assigned, the AI did not hand over, the customer did not rate the answer, and the customer wrote nothing for 24 hours after it. A check runs every five minutes. It records a charge; it does not close the ticket.

**Never billable:** a ticket the customer closed themselves, one an agent solved, Duplicate and Won’t fix closes, a ticket the AI handed over, an answer rated Not helpful, a ticket with no AI answer, and anything in the sandbox. An agent can never set the AI resolution: the Close ticket dialog offers only Solved by agent, Duplicate and Won’t fix.

After the AI answers

1. The AI answersFrom your articles, with its sources shown.
2. Customer confirmsCloses as Solved by AI. Charged.orSilent for 24 hoursAssumed solved. A charge is recorded and the ticket stays open.orNot helpful, or asks for a personHanded over to the team. Not charged, unless a charge was already recorded.orA person repliesThe AI stops. Not charged, unless a charge was already recorded.

Only the two paths where the AI held the ticket to the end are charged, at 0.35 USD by default. A handover or a reply after a charge was recorded does not reverse it.

A ticket is charged once, ever. A charge can be reversed by an admin through the admin API, which adds a reversal and leaves the original on record, and the ticket cannot be charged again. There is no button for this in the dashboard yet, and nothing reverses on its own, not even when a customer reopens the ticket or asks for a person afterwards. Whether that should happen automatically is still being decided.

## [#](#usage)Read the AI usage figures

Where: Support > Knowledge > AI resolutions this month. Admins and owners only. It shows the current UTC month. There is no separate AI usage settings page: the switches are under Org Settings, Support, General.

- **Billable**: Confirmed plus assumed, minus reversed.

- **Confirmed by the customer**: Resolutions the customer marked as solved.

- **Assumed after 24 hours**: Resolutions recorded after a day of silence.

- **Reversed**: Charges that were reversed this month.

- **Amount**: Billable resolutions at the price per resolution, in US dollars. The price is set for the platform and defaults to 0.35 USD.

- **AI cost**: What the AI cost to run this month on real tickets: answers, titles and summaries, whether or not they ended in a billable resolution. Sandbox use is not included. The spending cap reads the same figures by day.

i

These figures are a tally inside Support. They are not yet rolled up into a usage line on your Revvly subscription or invoice, because that connection has not been made. Do not expect them on an invoice yet.

## [#](#titles)Automatic titles and close summaries

**Titles.** A ticket opened without a title gets one of at most eight words, written from the customer’s first message. If a person names the ticket in the meantime, theirs wins. You can edit any title.

**Close summaries.** Shortly after a ticket closes the AI writes two or three sentences from the public conversation and how it ended. It shows as Close summary at the top of a closed ticket and under the ticket on the client’s Support tab, and only agents see it. The summary is also kept in a searchable history for agents; it is never used to answer a customer. A panel that finds similar past tickets has not been built yet.

Both follow the AI switch and the spending cap, and neither can ever be a billable resolution.

## [#](#sandbox)Try it in the sandbox

Where: Support > Inbox > Sandbox. Linked at the foot of the views column. Any agent can open it. Needs no secret key and touches no real customer.

The first time you open it, Revvly makes a hidden practice copy of your Support setup: your ticket types, workflows, roles, auto-close, AI and spending settings. Choose a practice customer (a name, optionally an email and company, a role value, attributes and a plan, which your role rules turn into roles exactly as for a real customer) and write to support as them on one side, while the real inbox screens on the other side work the same ticket. Saved customers are remembered in your browser.

- **Real knowledge**: The AI answers from your real workspace’s knowledge base with the same audience rules, so what a practice Founder is told is what a real Founder would be told.

- **Never billable**: Sandbox answers are recorded as practice, are never charged, and share a small daily cap of 2 USD of their own.

- **Nothing leaves**: Practice tickets are numbered SBX-1, SBX-2 and so on. Nothing reaches your real inbox, client pages, metrics or email, and no email is sent.

- **Reset sandbox**: Admins and owners can delete every practice ticket and customer and copy the setup again, for example after changing roles or types.

## [#](#compare)Compare with Intercom

Where: Support > Compare with Intercom. Admins and owners. Open it from the address /support/compare, or from the link under a completed conversation import (Support, Knowledge, Import, Past conversations, or Org Settings, Support, Import).

If you are moving from Intercom, you can see what the AI would have done on your past conversations before you switch it on, and set that beside what Intercom’s AI agent, Fin, actually did. It needs your Intercom conversations imported (Import, Past conversations, on the Knowledge page or at the foot of the inbox views column) and a knowledge base for the AI to answer from. The AI switch does not need to be on: nothing is sent to anyone.

Choose a date range and how many conversations to sample (200 by default, at most 500). Before you start, Revvly shows how many imported conversations the range holds and what the run should cost. For each sampled conversation, the AI answers the customer’s question exactly as it would answer a new ticket: from your knowledge base, limited to the articles that customer’s roles and plan allow, and with the guidelines that customer would get today. A second AI model then grades the answer against the reply the customer actually received, reading the same guidelines so an answer that rests on one is judged with its source.

The question is the customer’s first real one. A thin opener, such as a greeting or one of Intercom’s quick-reply buttons (a message with no question mark and fewer than six words), is skipped in favour of the next message from the customer that says something, looking at their first few messages before a person replied. The opener still goes in as context. Each customer’s roles are worked out from their Intercom role and attributes, with the same rules as a live customer (see [Roles](https://www.revvly.ai/docs/guides/support-setup#roles)). When a customer matches none of your roles and nothing open to everyone answers, the conversation is marked **No matching role** and left out of the rates, so a gap in your role setup is not counted against the AI.

- **Would resolve**: Correct and complete enough that the customer would not have needed to write again.

- **Partial**: Correct as far as it goes, but missing something.

- **Incorrect**: Contradicts the reply the customer got, or misleads.

- **Handed over**: The AI declined to answer, so a person would have taken it.

The report ends in two figures, each with a 95% range and the number of conversations it rests on. Each Fin figure sits beside the Revvly figure counted the same way, so they can be read as a pair. **Fin, answered** is the share of the conversations Fin took part in that Intercom recorded as resolved (assumed or confirmed), and **Revvly, answered** is the share of those same conversations where Revvly gave an answer rather than handing over, whether or not it was complete. **Fin, confirmed** is the confirmed-only share, beside **Revvly, would resolve**, the share whose answer would have resolved it. **Revvly, all graded** covers every graded conversation, including ones Fin never took part in, which are mostly account problems a person handled. A head-to-head shows, on the conversations Fin took part in, where both, only one, or neither would have resolved it, and the table lists every conversation with the question, Fin’s outcome and sources, the AI’s answer and sources, the reply the customer got, and why it was graded as it was. With fewer than 50 graded conversations the page says the two figures cannot be compared yet.

i

Read the figures with care. The AI answers from your knowledge base as it is today, not as it was when each conversation happened. The grading is done by an AI model, not a person. And Fin’s “assumed resolution” only means the customer did not come back, not that the answer worked.

**Why conversations were not resolved** sits above the table. It reads the articles Fin cited beside what Revvly’s search returned, and gives each conversation that was not resolved its most likely reason, closest miss first, with a count, a hint on what to do and a **Show** button that filters the table to those conversations:

- **Found Fin’s article, still fell short**: The search returned the article Fin used and Revvly still did not resolve. Compare the article’s wording with the question, and read the grader’s reason.

- **Fin’s article not found by the search**: The customer could read the article, and the search did not bring it up. Add the phrasing customers use, or a short question-and-answer section.

- **Fin’s article hidden from this customer**: The article is searchable, but its audience leaves this customer out. Check the article’s roles, or the rules that give this customer a role.

- **Fin’s article not searchable**: It is in your knowledge base but left out of search: excluded, failed, or waiting for review. Review it under Knowledge.

- **Fin’s article not in your knowledge base**: No article matches the one Fin used. Import it from Knowledge.

- **Fin cited nothing**: There is no telling which article was needed. Read the reply the customer received.

The table has a **Reason** filter and a **Likely reason** column. A **Show** filter beside the verdict and reason picks out **Fin resolved, Revvly didn’t** (Fin assumed or confirmed a resolution and Revvly’s grade was partial, incorrect, handed over or no matching role) or **Fin found an article, Revvly’s search didn’t** (Fin cited an article and Revvly’s search returned none of its sources). Paging and the CSV download follow the filters you have set. Open a conversation to see, beside the grade, its likely reason, the sources Fin cited (each marked as in your knowledge base, hidden from this customer, not searchable or missing, and whether Revvly’s search found it), the articles Revvly’s search returned with their scores, the text it searched for, and the **Guidelines Revvly followed**, each marked when the answer cited it. A comparison run before Revvly recorded what it searched shows no reasons; start a new comparison to see them.

When no article answers the exact question but one covers the same feature or task, the AI answers from it and says what the article does not cover; it hands over only when nothing bears on the topic. When a question could mean a few things your articles answer differently, it answers each reading briefly in one reply instead of asking which was meant, and asks only when that will not fit or a missing detail leaves no useful answer.

**Comparison history.** Every run is kept. The Comparison history table under the report lists them all with the Revvly and Fin rates, the change in points since the run before, the cost, the models, and a CSV download of that run’s conversations. Select a run to open its full report in place of the latest one; Back to the latest returns.

The run spends AI and shows in the AI cost, and it can never be a billable resolution. It is held to your daily spending cap, but counted apart from live answers: the cap bounds what comparison runs spend in a day, and live AI answers are not affected by it. If a run reaches the cap it stops with the results so far, and you can resume it later from where it stopped. Each run also records a fingerprint of the knowledge base it answered from, and is flagged if the knowledge changed while it was paused, because its results then mix two versions. One comparison runs at a time per workspace.

## [#](#not-built)Not built yet

- Notifying agents when the AI hands over a ticket.
- The usage line on your Revvly subscription.
- Images in AI answers.
- A box to test what a given role and plan would retrieve.

## Related

- [Build the knowledge base the AI answers from ›](https://www.revvly.ai/docs/guides/support-knowledge)
- [Write guidelines for the support AI ›](https://www.revvly.ai/docs/guides/support-guidelines)
- [Work the support inbox ›](https://www.revvly.ai/docs/guides/support-inbox)
- [Set up Support for your team ›](https://www.revvly.ai/docs/guides/support-setup)

