All posts

May 1, 2026 · 4 min read

Your 'New Signup' Slack Alert Might Be Broadcasting More Than You Realize

Internal alerts, a Slack message when someone signs up, an email when a payment comes through, a notification when a support ticket gets filed, are one of the easiest features to add with an AI coding tool, and one of the easiest to build without thinking about what they actually contain and where they end up.

Why these feel low-stakes, and why that feeling is often wrong

A notification feels internal by nature, going to a channel or inbox your own team already has access to, so it's easy to skip the same scrutiny you'd apply to a customer-facing feature. The problem is that "internal" describes intent, not an actual security boundary, the same issue I've written about with internal tools generally. A Slack channel or shared inbox often has broader membership than the specific alert's contents were meant for, especially as a team grows and channels accumulate members who joined for unrelated reasons.

What tends to end up in these alerts

To make an alert useful at a glance, it's natural to include real detail: a customer's full name, their email, sometimes a partial payment amount or account identifier. That's genuinely useful for the team member reading it. It also means a channel with fifteen people in it, several of whom joined for an unrelated reason months ago, is now a running feed of real customer information, sitting in a tool that almost certainly isn't being treated with the same access discipline as your actual customer database.

Where this compounds into a bigger issue

  • A Slack or Discord workspace's search function makes months or years of these notifications trivially searchable by anyone with channel access, effectively building an unintended, informal customer database with none of the access controls the real one has.
  • If that webhook URL delivering the alert (the same kind I've written about before) ever leaks, someone can potentially see the same steady stream of real customer detail, not just post fake messages.
  • Notifications sent to email often end up forwarded, CC'd, or sitting in an inbox with different security practices than your primary systems, another copy of real data living somewhere less protected.

What's actually worth checking

  • Look at what your actual internal notifications contain right now: a signup alert, a payment alert, a support ticket alert. Do they include a full email or just a first name? A partial identifier or a complete one?
  • Check who actually has access to the channel or inbox these land in, and whether that list has grown beyond who genuinely needs to see real customer details.
  • Consider whether a notification actually needs the sensitive detail included directly, or whether a link back into your actual, access-controlled system, click through to see the real record, achieves the same usefulness with less data sitting in a less controlled place.

None of this means stop using notifications, they're genuinely useful for a team staying on top of what's happening. It means treating what goes into them with the same care as anywhere else real customer data ends up, rather than assuming "internal" already covers that question.

Related reading

Harbova is a security service for apps built with AI tools. Start with a free scan, and if it finds something serious, we can fix it and prove it is closed.