We see the same handful of mistakes from teams setting up Zendesk-to-git sync for the first time. Most of them aren't really mistakes per se — they're sensible-looking defaults that turn out to be wrong once you've lived with them for a quarter. The good news: each one is a 5-minute configuration change to fix.
Here are the five that account for ~80% of the "help, our integration is making things worse" emails we get.
Mistake 1: Sync everything bidirectionally from day one
The most common configuration mistake. The integration looks impressive when you turn on full bidirectional comment sync — engineering's discussion appears in the ticket, customer messages appear in the issue, look at all that information flowing! But within two weeks one of two things happens:
- Your engineering team disables the integration because their issue threads are cluttered with "thanks!", "any update?", "bumping this", and email signatures.
- Your support team starts ignoring the issue-comment notifications in Zendesk because most of them are internal engineering chatter ("can you take a look at this PR?") that has nothing to do with the customer.
The fix
Default to syncing nothing, then opt in specific things. The right setup for most teams:
- Outbound (Zendesk → issue): sync only public-facing customer messages (i.e. not internal notes from agents). Use a regex filter to strip email signatures and out-of-office replies.
- Inbound (issue → Zendesk): sync only meaningful status changes (opened, in progress, merged, closed) and explicit @mentions of the support agent. Don't sync general engineering discussion.
Engineering can still post a comment on the issue specifically intended for the support agent — mark it with @mention, and it flows. Default behavior is "don't bother the other side."
Mistake 2: Letting agents create issues with no defaults set
You install the integration, agents can now create issues from Zendesk, and you've set zero defaults. So agents create issues with whatever the system default is, which is usually some unhelpful "no project," "no labels," "no priority," "no assignee" combo. The issues land in a backlog purgatory where engineering doesn't see them and support doesn't follow up.
The fix
Configure defaults — specifically, defaults that route the new issue to a place a human will look at it within 24 hours.
- Default project / board: a triage board that someone owns. Not the team's main backlog.
- Default status: "Triage" or "New" — explicitly meaning "no one has looked at this yet."
- Default labels: at least one label like
customer-reportedso engineering can filter for these specifically. - Default priority: medium. Don't auto-set urgent (false alarms cost trust); don't auto-set low (real bugs get ignored).
If different Zendesk roles should route to different places (customer-success-driven issues to the customer-facing roadmap, bug reports to the engineering bug board), set per-role defaults. Most integrations support this; few teams use it; it's the highest-ROI configuration option.
Mistake 3: One big "engineering" project for everything
Variant of mistake 2. The team creates one project / board / repo called "engineering" or "support escalations" and routes all customer-driven issues there. The board accumulates 200 open issues, no one knows what's important, the engineer who used to triage it burns out and leaves.
The fix
Route by team or component, not by source. The bug-fix issues should go to the team that owns the relevant code. The feature-request issues should go to the product backlog (or a separate "feature requests from customers" board with its own review cadence). The "this is actually a docs problem" issues should go to docs.
If you can't tell at escalation time which team should own it, route to a triage board with explicit ownership — one person whose job is to redistribute. Don't route to a black hole.
Mistake 4: Treating the issue as the customer-facing thing
Some teams, when they get the integration working, start writing customer-facing replies in the issue tracker comments and letting the sync push them to Zendesk. This feels efficient (one place to discuss everything!) and is actually a disaster.
Issue trackers are not designed for customer communication. The threading is wrong. The notification model is wrong. The tone is wrong (engineers writing to engineers vs. support writing to customers). Customers see "Zendesk ticket reply" emails that read like git issue comments. Support agents lose visibility into the customer's mental state because they're not the ones writing the replies anymore.
The fix
Treat the integration as a one-way information bridge for engineering's internal context, not as a replacement for support's customer-facing work. Engineers post status updates and questions in the issue. Support translates those into customer-facing language and sends them via Zendesk's normal reply flow. The tools each do what they're good at.
If your support team doesn't have time to translate, hire more support agents — don't outsource customer communication to engineers.
Mistake 5: Ignoring webhook health
The integration works for a month. Then someone deletes a webhook in GitHub (because they were cleaning up old webhooks from a previous integration). Then the OAuth user's account gets deactivated when an employee leaves. Then a firewall rule changes and webhooks stop reaching the integration.
Each time, the sync silently breaks. The Zendesk side still looks connected (the sidebar app is there, the icon shows "linked"), but new issue updates stop flowing. Support agents wonder why engineering's gone quiet. Engineering wonders why support has stopped escalating. Trust erodes for weeks before someone notices.
The fix
Two things, one process and one technical:
- Process: add "verify Git-Zen webhooks are still configured" to your monthly admin checklist. Takes 60 seconds. Catches 90% of webhook decay.
- Technical: use an integration that monitors webhook heartbeat and tells you when it stops. Git-Zen does this in our admin panel; if you're using something else, check whether it does and how to wire up the alerting.
Also: when an employee with admin access to your git provider leaves, audit the OAuth users / PAT owners on the integration. The integration should keep working under a service account, not an individual's account.
The meta-pattern
If you look at the five mistakes, they share a shape: the default behavior of the integration isn't quite right for your specific team, and you didn't notice until it had been wrong for long enough to cause damage.
The fix in every case is to spend an hour configuring defaults thoughtfully — what should sync, what shouldn't, where should new work go, who owns the triage — before you push the integration out to your full team. The setup we recommend takes about 60 minutes and prevents months of slow erosion.
If you're setting up Git-Zen for the first time, our default configuration tries to embody these lessons (sync nothing by default, configurable per-role defaults, monitored webhooks, regex filters available out of the box). If you're using a different integration, you can still apply most of these patterns — it just takes more manual work to set up.
The integration is the easy part. The configuration is the part that determines whether your support and engineering teams end up loving each other or quietly hating each other six months from now.
Try Git-Zen with sensible defaults
14-day free trial, no credit card required. Install from the Zendesk Marketplace.
See pricing & install