Back to Zendesk in Google Sheets
SheetXAI logo
Zendesk logo
Zendesk · Google Sheets Guide

Merge Duplicate Zendesk Tickets From a Google Sheet

2026-05-15
5 min read

The Scenario

The support admin came in Monday morning to find a spreadsheet from the CX lead: 40 pairs of duplicate tickets identified over the weekend. Source IDs in column A, target IDs in column B. They need to be merged before the agents start their day — duplicate tickets in Zendesk confuse routing, inflate metrics, and occasionally result in two agents working the same customer issue without knowing it.

The admin opened the Zendesk UI, looked at the first pair, and navigated to the source ticket to start the merge. That's when the math hit: 40 merges, each requiring navigation, a multi-step UI flow, and a confirmation click. At four minutes per merge, that's nearly three hours.

The bad version:

  • Navigate to ticket A1 in Zendesk.
  • Find the merge option in the ticket actions menu.
  • Search for ticket B1 by ID.
  • Confirm the merge.
  • Navigate to ticket A2.

The CX lead already did the hard work — identifying the duplicates. Executing the merges through the UI is pure mechanical overhead.

The Easy Way: One Prompt in SheetXAI

SheetXAI is an AI agent inside your Google Sheet. It reads the duplicate pairs and uses the Zendesk integration to execute every merge in one operation.

Open the SheetXAI sidebar in the duplicate resolution sheet and paste:

For each row in this sheet, merge the source ticket ID in column A into the target ticket ID in column B in Zendesk and write the merge job status into column C

What You Get

  • Every ticket pair in the sheet processed through the Zendesk merge API.
  • Column C receives the merge status for each pair — 'merged' or the error returned by Zendesk.
  • Failed merges (e.g., if one ticket is already closed or already merged) are flagged with the reason rather than silently skipped.

40 merges executed without navigating through a single ticket page.

What If the Data Is Not Quite Ready

Some source tickets may already be merged or closed

For each row in this sheet, attempt to merge the source ticket in column A into the target ticket in column B. If the source is already closed or merged, write 'skipped - already resolved' in column C. Otherwise write 'merged' or the error

Pre-merge status check so closed tickets don't generate errors.

You want to add an internal note to the surviving ticket after each merge

For each row in this sheet, merge the source ticket ID in column A into the target ticket ID in column B. After each successful merge, add an internal note to the target ticket: 'Merged with duplicate ticket [source ID] on 2026-05-15.' Write merge status to column C

Post-merge documentation happens inline — no second pass needed.

The sheet has some rows with blank source or target IDs that should be skipped

For each non-blank row in this sheet, merge the source ticket ID in column A into the target ticket ID in column B. Skip any row where either column is blank and write 'skipped - incomplete row' in column C

Blank-row handling without pre-filtering the sheet.

Full duplicate resolution with summary

For each row in this sheet from row 2 to row 41: merge source ticket ID in column A into target ticket ID in column B. Write status to column C. When done, write total merged count and total failed count to cells E2 and E3

40 merges, complete status log, and a summary count — one prompt, duplicate queue cleared before standup.

Try It

Get the 7-day free trial of SheetXAI and open your duplicate resolution sheet with ticket pairs in columns A and B. Related: bulk-update ticket fields for follow-up changes on the surviving tickets, or return to the Zendesk integration guide.

Stop memorizing formulas.
Tell your spreadsheet what to do.

Join 4,000+ professionals saving hours every week with SheetXAI.

Learn more