Inbox management

The Support inbox is where your team views and responds to customer conversations. Each ticket includes rich context from PostHog to help you understand and resolve issues quickly.

Accessing the inbox

Go to Support in the main PostHog navigation to access your inbox.

Ticket properties

Each ticket has the following properties:

PropertyDescription
Ticket numberAuto-incremented unique number (e.g., #1, #2, #3)
Statusnew, open, pending, on_hold, resolved
Prioritylow, medium, high (optional — unset by default)
ChannelWhere the ticket came from: widget, slack, email, teams, or github
AssigneeUser or role responsible for the ticket
Session IDThe PostHog session for events and exceptions
Distinct IDPostHog distinct_id for person linking

Status workflow

StatusMeaning
newJust created, not yet viewed by team
openBeing actively worked on
pendingWaiting for customer response
on_holdPaused for external reason
resolvedIssue resolved, conversation closed

Tickets can also be snoozed until a specific time. Snoozing a ticket automatically sets its status to on_hold, and it reopens to open when the snooze expires.

The ticket inbox supports filtering by:

  • Status: Filter by ticket status
  • Priority: Filter by priority level
  • Channel: Filter by source: widget, Slack, email, Teams, or GitHub
  • SLA state: On track, at risk, or breached
  • Tags: Filter by tags (supports any-match, all-match, and exclude modes)
  • Assignee: Unassigned, specific user, or specific role
  • AI triage: Filter by AI triage result (when AI suggestions are enabled)
  • Date range: Filter by last updated date (defaults to last 7 days)
  • Search: Search by ticket number, customer name, email, or message content
  • Sort: Sort by last updated, SLA deadline, creation date, or ticket number

You can save filter combinations as saved views for quick access.

Ticket assignment

Tickets can be assigned to:

  1. Individual users: A specific team member
  2. Roles: A group of users. Assigns to the role, not individual members.

How to assign a support ticket

  1. Open a ticket
  2. Click the Assignee dropdown in the sidebar
  3. Search for and select a user or role

Assignment saves immediately on selection.

How assignment works

Assignment is manual with no automatic routing. Each ticket supports one assignee.

Filtering by assignee

In the ticket list, use the assignee filter:

  • Unassigned: Show tickets with no assignment
  • User: [name]: Show tickets assigned to a specific user
  • Role: [name]: Show tickets assigned to a specific role

SLAs

SLA deadlines are set via workflow automation – there's no built-in SLA configuration UI. You create a workflow that triggers on ticket creation (or priority change) and uses the Update ticket action to set a deadline.

SLA states are derived from the deadline:

StateCondition
On trackMore than 1 hour until deadline
At risk1 hour or less until deadline
BreachedPast the deadline

The ticket list supports filtering and sorting by SLA state. The SLA deadline is also displayed in the ticket detail sidebar.

See workflow automation for examples of setting SLAs based on channel, priority, or customer domain.

Tags

Tickets support free-form tags for categorization and filtering.

  • Tags are shared across the project — any tag used on one ticket is available on all tickets
  • Add or remove tags from the ticket detail sidebar
  • Filter the ticket list by tags using any-match, all-match, or exclude modes
  • Bulk add, remove, or set tags across multiple tickets

Tags can also be set automatically via workflow automation.

Messages

Author types

Author typeDescription
CustomerMessages sent by the end user via the widget, email, Slack, Teams, or GitHub
SupportMessages sent by your team from PostHog
AIMessages generated by AI. Can be configured as private notes (visible only to your team) or public bot replies per channel.

Message status

Widget tickets

Messages you send to widget customers display delivery status indicators:

StatusMeaning
SentMessage has been delivered to the customer
ReadCustomer has viewed the message

These are inferred from the ticket's unread counter and only appear on widget-channel tickets.

Email tickets

Email replies show delivery status:

StatusMeaning
SendingEmail is being dispatched
SentEmail was delivered successfully
FailedEmail delivery failed

Private notes

Messages can be marked as private notes, which are:

  • Only visible to your team in PostHog
  • Hidden from customers in the widget
  • Not counted toward the customer's unread messages
  • Useful for internal notes or handoff context

To send a private note, check Attach as private note before sending.

Unread tracking

The system tracks unread messages separately for:

  • Customer — Messages the customer hasn't seen (from your team)
  • Team — Messages your team hasn't seen (from the customer)

Unread counts reset when:

  • Team views a ticket in PostHog
  • Customer calls the "mark as read" endpoint from the widget

Ticket detail page

When you open a ticket, you'll see several panels with context:

Chat thread

The main conversation with the customer. Send replies here — they'll appear in the customer's widget, email, Slack, Teams, or GitHub thread depending on the channel.

Session recording panel

Widget tickets only. If Session Replay is enabled, you can watch their session directly in the ticket view. This shows what they were doing before and when they reached out.

Recent events panel

Widget tickets only. Events from ±5 minutes around when the ticket was created. This helps you understand:

  • What actions led to the support request
  • What they were trying to accomplish
  • Any errors or unusual patterns

Exceptions panel

Widget tickets only. Any errors or exceptions from their session. If they encountered a bug, you'll see the stack trace here.

Previous tickets panel

Other tickets from the same person. Useful for:

  • Understanding their history with support
  • Identifying recurring issues
  • Seeing how previous issues were resolved

Activity log

A history of all changes made to the ticket — status changes, assignment updates, priority changes, and more. This helps you understand the full timeline of a ticket's lifecycle.

Tips for efficient support

  1. Use private notes for internal notes when handing off tickets
  2. Check Session Replay before asking them to describe what happened
  3. Look at exceptions to quickly identify bugs
  4. Review previous tickets to avoid asking repeat questions
  5. Set status to pending after you respond to track who's waiting for a reply
  6. Use saved views to quickly switch between common filter combinations
  7. Snooze tickets when you're waiting on something external instead of leaving them open

Community questions

Was this page useful?

Questions about this page? or post a community question.