PostHog Handbook Library / CS and Onboarding

522 words. Estimated reading time: 3 min.

# Handling customer issues

As the dedicated PostHog human for your customers, you're the first stop for issues. You have the most context on them, so you're best placed to triage and escalate.

Support and engineering are always available to help, but try to solve issues yourself first. You'll level up your product knowledge faster.

### Raising issues

#### Zendesk

We use Zendesk Support as our internal platform for support tickets. For specifics on how we use Zendesk, see here.

#### Tickets from Slack

Customers can create tickets from Slack by adding the 🎫 emoji reaction. This means they can get help even when you're asleep or on holiday. Let your customer know about this, and remind them now and then.

If it isn't working, check that you've invited Pylon to the channel. Fill out the automated message asking for `Group` and `Severity` so the ticket goes to the right team — customers often forget, so fill it for them. Check feature ownership if you're not sure who owns a product area.

If you're working on a ticket the customer raised in Slack, let support know to avoid duplicate effort. Leave an internal note in Zendesk.

> Tip: Customer messages from Pylon channels also go to #support-customer-success. Find the ticket there and reply in the thread — that also creates an internal note in Zendesk.

### Investigating issues

Ask for specifics: links to the insight, feature flag, or dashboard; a screenshot or the exact error message.

If it helps, log in as the customer. Clicking a link from their PostHog instance will sometimes offer a "log in as" option. Otherwise, go to US admin (EU admin), search for the org or user, and click "Log in as user". If you don't see that option, ask Dana Zou to add you as a staff member in admin.

Use our docs, troubleshooting tips, and search Slack, Zendesk, GitHub, and Pylon for similar issues. If you've just joined, spend 30 mins to an hour investigating yourself before asking for help — onboarding is when you learn the products best. Use common sense based on urgency.

Keep the customer in the loop while you investigate — progress, blockers, next steps.

### Escalating tickets

Escalate to support or the relevant engineering team:

- Need more context or further digging → support
- Issue needs deep technical domain knowledge → engineering

Our support team are technical engineers and handle most tickets. When in doubt, escalate to support.

If you're escalating to support, no action needed — the ticket stays in the support queue.

If you're escalating to engineering, set the `esc.` dropdown in Zendesk's left sidebar to escalated and check the group assignee makes sense. You may need to upgrade your Zendesk role to full agent — remember to downgrade after.

Either way, leave an internal note explaining what you're escalating and why, plus what you've already tried. Even confirming you followed the customer's repro steps and saw the same issue is valuable context.

### Auditing impersonations

Customers sometimes ask who from PostHog has accessed their account. Use this SQL query on project 2 to get an impersonation log for a specific organization. Get the organization ID from Vitally.

    -- Get all user emails for an organization from persons table
    WITH org_users AS (
        SELECT DISTINCT
            properties.email as user_email,
            properties.org__name as org_name
        FROM persons
        WHERE properties.organization_id = 'ORGANIZATION_ID'
            AND properties.email IS NOT NULL
    )
    SELECT
        e.timestamp,
        ou.org_name,
        e.properties.target_user_id as target_user_id,
        e.properties.target_user_email as target_email,
        e.event,
        e.properties.staff_user_email as staff_email,
        e.properties.mode as mode,
        e.properties.reason as reason
    FROM events e
    JOIN org_users ou ON e.properties.target_user_email = ou.user_email
    WHERE
        e.event IN ('impersonation_started', 'impersonation_upgraded')
        AND e.timestamp >= now() - INTERVAL 30 DAY
    ORDER BY e.timestamp DESC

Canonical URL: https://posthog.com/handbook/cs-and-onboarding/handling-customer-issues

GitHub source: contents/handbook/cs-and-onboarding/handling-customer-issues.md

Content hash: `1ed2611ed6c63c55`

Static reader notes

- `MDX_COMPONENT_STATIC_ADAPTER`: Adapted interactive MDX components for static reading: PrivateLink, TeamMember.