LearnMicrosoft Teams › 3 · Messaging architecture

The life of a message

Sent, edited, deleted, expired, held, purged — a Teams message has six possible fates, and 'delete' is the least final of them. Decode the timeline once and every records question becomes mechanical.

The six fates

Fate Who triggers Visible copy Compliance copy
Sent User Rendered everywhere Written within minutes
Edited Author (policy-permitting) Latest version only, "Edited" tag ALL versions retained
User-deleted Author ("Delete") Tombstone/removed Untouched
Admin-deleted Admin/moderation Removed for everyone Untouched (still discoverable)
Retention-expired Retention policy Purged after pipeline lag Purged (this is the real deletion)
Held Litigation/eDiscovery hold May be user-deleted from view Frozen regardless of everything above

Read the table's punchline: users can only ever affect the visible copy. The compliance copy answers to exactly two masters — retention policy and holds. When someone asks "is it really gone?", the answer is a Purview question, not a Teams one.

Policy switches that shape the lifecycle

  • TeamsMessagingPolicy: AllowUserEditMessage, AllowUserDeleteMessage, AllowOwnerDeleteMessage (channel moderation) — turning delete off doesn't protect records (compliance copy already does); it protects conversation integrity.
  • Retention for Teams is its own policy family (chat vs channel messages as separate locations) with a known floor: even "delete after 1 day" takes effect only after the processing pipeline's multi-day latency. Teams retention ≠ instant purge, ever.
  • Holds trump everything — including shorter retention. Release the hold and the backlog purge catches up.

The interview answers (because these exact questions recur)

  • Can IT recover a message a user deleted? From the client, no; via eDiscovery, yes (until retention purges it).
  • Can a user beat eDiscovery by editing? No — versions are retained.
  • If retention says delete at 30 days, when does it vanish? Visible copy: some days after day 30 (pipeline). Compliance copy: same window. "Day 30 exactly" appears in no SLA.
  • Do reactions/read receipts persist? Reactions are message mutations (retained); read receipts are ephemeral signals, not records.

What to watch (proofs)

  • Version retention: edit a test message, eDiscovery-export it — both versions in the export, only one in the client.
  • Delete vs gone: user-delete then eDiscovery search (hit) → apply short retention on a test scope, wait out the pipeline, search again (no hit). You now hold empirical latency numbers for YOUR tenant — write them down.
  • Policy truth: Get-CsTeamsMessagingPolicy | fl AllowUserEdit*,AllowUserDelete*, AllowOwnerDeleteMessage across all instances (serv365 scans these; the transcription precedent applies — check every instance, not Global).
  • Hold supremacy: item on hold + expired retention → still discoverable; the hold report in Purview names what's frozen and why.

PowerShell for this concept

Discussion

No messages yet — start the thread.

Sign in with your email to join the discussion — we send a one-time link, no password.