Legal

Security

Last updated November 6, 2026

Lapse connects to your Meta ad accounts, so this page explains exactly what it can access and how that access is protected. Everything here describes how the product works today.

Meta access: the least we need

  • By default Lapse asks Meta only for read-only access to your ads: it can read them, not change them.
  • The separate permission to pause ads is requested only if you turn auto-pause on, which is off by default.
  • You choose which ad accounts Lapse checks. We don't read ad spend, performance, audiences or payment details.
  • Some optional setup shortcuts (finding your Business portfolios and Instagram accounts) need extra read permissions. They are only asked for when switched on, and never decide whether an ad is paused.

Encrypted tokens

Your Meta access token is encrypted before it is stored, using AES-256-GCM with a random 96-bit nonce per token and a 256-bit key kept outside the database. GCM is authenticated, so a tampered value fails to decrypt instead of producing a wrong token. Slack webhook URLs are encrypted the same way. Tokens are never shown in the app, and our logger strips tokens and secrets before anything is written to logs.

Pauses: logged, and undoable in one click

  • Lapse pauses an ad only when auto-pause is on and the ad is clearly matched to a license that has ended or been revoked. Weaker matches only raise an alert.
  • Every pause is logged before the request goes to Meta, and the result is recorded after it, so an interrupted attempt is never lost.
  • Settings lists Lapse's recent pauses, each with an Undo button that resumes the ad. Undos get their own log entry, so the history is never overwritten.
  • If you or Undo turn an ad back on, Lapse won't pause it again for the same license.

Each organization sees only its own data

All app code reaches customer data through a single access layer that adds your organization to every read, update and delete, and stamps it on every new row. It can't be called without an organization. The raw database connection is not available to the rest of the app, and automated tests check that this stays true. The few tasks that span organizations (sign-in, the scheduled daily check, billing updates from Stripe, deleting an account, and internal health and status checks) live in one small module.

Infrastructure

  • All traffic uses HTTPS. The site can't be framed by other sites.
  • Sign-in uses single-use email links (plus a temporary reviewer login used only for Meta's app review). Lapse stores no passwords.
  • Data is stored in the United States with the providers on our Subprocessors page.

Your data is yours

We never sell your data, use it for advertising, or share it beyond the providers that run the service. Daily ad snapshots are kept for 90 days and findings for 2 years. Deleting your organization in Settings asks Meta to revoke Lapse's access, deletes the stored token either way, cancels billing and removes your data; see Data deletion.

What we don't have yet

Lapse is a small company and doesn't hold a third-party security certification. We're happy to answer your security questionnaire, and a Data Processing Addendum is available to sign.

Report a problem

If you find a security issue or think your data was exposed, email support@trylapse.io. We look into every report and tell affected customers about any incident without undue delay.