Skip to main content
A user whose email appears in a new breach is at risk of credential stuffing, especially if they reused their password. This guide shows how to check users periodically and notify them only about breaches they have not seen before.

Approach

  1. Check each user’s email with POST /v1/breaches/email.
  2. Store the Name of every breach you have already seen for that user.
  3. On the next check, compare. Any new Name is a new breach.
  4. Notify the user and suggest a password change.

Example

Picking a schedule

Each check uses 1 credit. Checking 10,000 users once a month uses 10,000 credits a month. Common patterns:

Writing the notification

A good breach notification:
  • Names the breached service using Title, and when it happened using BreachDate.
  • Lists what was exposed using DataClasses, such as passwords or phone numbers.
  • Recommends a concrete action: change the password on that service and on any site where it was reused, and turn on two-factor authentication.
Description contains HTML. Do not insert it into an email or page without sanitizing it.
breached: false means no public breach was found. Sensitive and opted-out breaches are not included, so do not tell users they have “never been breached”.