Log resolved Crisp conversations to a Google Sheet

Every time a Crisp conversation is marked resolved, we add a row to your Google Sheet, so you have a clean record of closed tickets for weekly reporting.

Deterministic Code
CrispGoogle SheetsCustomer SupportOperationsData Sync
PromptCreate

Run this as a Crisp webhook workflow that fires whenever a conversation's status changes. Crisp sends this webhook for every status change, so the first thing to do is check the new status and only continue when it is "resolved". If the conversation moved to any other state (such as pending or unresolved), stop and do nothing, so the log only ever records closed tickets.

When a conversation is resolved, gather the details to log:

  • Call Crisp's Get People Profile for the conversation's contact to read the contact's full name, email address, and the segments or tags on that contact.

  • Call Crisp's Get Messages In Conversation and count the returned messages to get the total message count for the ticket.

  • Take the assigned operator, the conversation (session) id, and the website id from the webhook payload.

Then append a single row to a Google Sheet with Append Values, one row per resolved conversation, using these columns in order:

  • Resolved timestamp: Crisp timestamps are Unix epoch milliseconds, so convert the status-change time to a human-readable date and time before writing it.

  • Contact name.

  • Contact email.

  • Assigned operator.

  • Conversation segments or tags, comma-separated when there are several.

  • Message count.

  • Link back to the conversation, built from the website id and session id, for example https://app.crisp.chat/website/{website_id}/inbox/{session_id}/.

Append to a fixed spreadsheet and tab that I configure (for example a "Resolved Tickets" tab). This is a plain, deterministic record for weekly reporting, so do not summarize, score, or add any commentary. If a field is missing, such as a contact with no email, write an empty cell rather than skipping the row.

Additional information

What does this prompt do?
  • Watches your Crisp inbox and springs into action the moment a conversation is marked resolved.
  • Adds one tidy row to your Google Sheet with the contact's name and email, the operator who handled it, the tags on the contact, the message count, the resolved time, and a link back to the chat.
  • Skips any conversation that moves to a different status, so your sheet only ever holds closed tickets.
  • Runs automatically in the background with no copy-pasting or manual logging.
What do I need to use this?
  • A Crisp account with access to the inbox you want to track.
  • A Google account and a Google Sheet to log resolved conversations into.
  • Optional: a dedicated tab (such as 'Resolved Tickets') with the column headers set up the way you want.
How can I customize it?
  • Choose which Google Sheet and tab the resolved tickets get logged to.
  • Pick which details to capture in each row, such as tags, operator, or message count.
  • Adjust how the resolved date and time are formatted for your reports.

Frequently asked questions

Will conversations that aren't resolved show up in my sheet?
No. The automation only logs a conversation once its status changes to resolved, so your sheet stays a clean record of closed tickets.
Does this happen automatically?
Yes. As soon as a Crisp conversation is marked resolved, a new row is added to your Google Sheet without any manual work.
What information gets saved for each conversation?
The resolved date and time, the contact's name and email, the operator who handled it, the conversation's tags or segments, how many messages were exchanged, and a link back to the chat in Crisp.
Can I use this for weekly reporting?
Yes. Because every closed ticket lands in one spreadsheet, you can filter or chart the data however you like for weekly or monthly reviews.
Will it change or overwrite my existing sheet data?
No. Each resolved conversation is simply added as a new row at the bottom, so nothing already in your sheet is touched.

Turn every resolved Crisp chat into a clean spreadsheet log.

Set up automatic ticket logging once and get a reliable record of closed conversations for every weekly report.