Why do emails thread to the wrong ticket?

Why does the email thread into the wrong ticket or into an existing ticket as a comment? Threading logic is based on RFC standards. All In-Reply-To and References lines must contain unique values. If one of these lines uses a static message-ID or email address, incoming emails thread into the same ticket. To create a separate ticket, copy the email content into a new email message and send it to the same Reply-To support address.

Note: The system keeps threading header data for 30 days. If an email response to an existing thread is older than 30 days, the data is unavailable to make a connection.
Another reason for threading is if the encoded ID from another ticket appears in the email. The system uses encoded IDs to link replies to existing tickets.
How are inbound emails threaded to tickets?
When an inbound email arrives, Zendesk checks the email for references to existing tickets. This check determines if the email is a ticket update or if a new ticket is created.
The system checks for the references listed below to thread emails:

Expand all tabs



document.addEventListener('DOMContentLoaded', function () {
const toggleBtn = document.getElementById('master-toggle');

toggleBtn.addEventListener('click', function () {
const action = this.getAttribute('data-action');
const headers = document.querySelectorAll('.accordion');

headers.forEach(header => {
const isActive = header.classList.contains('active');
const panel = header.nextElementSibling; // Grabs the corresponding .panel container

if (action === 'expand' && !isActive) {
// Open it by simulating a standard click
header.click();
} else if (action === 'collapse' && isActive) {
// Close it by simulating a standard click
header.click();
}
});

// Flip button text and states
if (action === 'expand') {
this.setAttribute('data-action', 'collapse');
this.textContent = 'Collapse all tabs';
} else {
this.setAttribute('data-action', 'expand');
this.textContent = 'Expand all tabs';
}
});
});
Elements in the email header
In the email header, the References and In-Reply-To lines contain the message IDs for other emails in the same thread. Zendesk checks these message IDs on existing tickets. If Zendesk finds a match, the system adds the email as a reply to the matching ticket.
The email header is visible in the email source, see Viewing the HTML and original source for incoming tickets.
For more information to troubleshoot email headers, see Why do emails thread to the wrong ticket?
Encoded IDs in the message body
An encoded ID is a unique reference to a specific ticket. Zendesk includes an encoded ID by default in every outbound notification email to help match replies to the correct ticket.
Any email body can include an encoded ID. It is not exclusive to emails that Zendesk generates. The encoded ID must appear inside square brackets, for example, [1G7EOR-0Q2J], so Zendesk can detect it.
Encoded IDs in the Zendesk receiving address
Zendesk support email addresses may use aliases that include the encoded ID. For example, the email address for a ticket with encoded ID 1G7EOR-0Q2J in the mondocam subdomain appears like this: support+id1G7EOR-0Q2J@mondocam.zendesk.com.
This structure helps ensure that the email threads to the corresponding ticket, even if no other references exist.
This use of encoded IDs only works for Zendesk support email addresses. It does not apply to external support addresses.
To access the encoded ID:
Use the {{ticket.encoded_id}} placeholder in macros or ticket comments to show the encoded ID
Use the Tickets API to view the encoded_id parameter. This approach allows API workflows to access the encoded ID without manipulation of ticket comments


Note: Contrary to standard ticket comments, comments from side conversations use the Conversation ID from the email body and not Reference or In-Reply-To in the email header.
How do I check what causes tickets to thread into one ticket?
To determine what causes tickets to thread multiple emails into one ticket, review the original email records for matching message-IDs:
Open the ticket created from an inbound email
Click the options menu for the original email, then select View original email which opens in a new window
Repeat this for the threaded message from the same sender that should be a separate ticket
Click the Source tab for both messages in the email body
The Source tab contains information listed as one or more of these items:
If you find Message-ID in the headers, this is the first email written as an original message. Copy the string found next to message-ID and check the References entries for matching messages through the find function
If you find In-Reply-To or References, the message is a reply to an existing message in the requester's email account. Use the find function to check for more Reference strings for matches. This confirms that the requester replied to saved messages in their inbox instead of submitting a new request. This often happens if the ticket is a follow-up ticket

