Understanding Segment Counts, Estimated Audiences, and the Segments API

What segment and list counts represent

Segment and list counts in Klaviyo represent the number of profiles that currently meet the conditions of that segment, or are currently present in that list, at the time the count is calculated. Dynamic segments recalculate automatically as people meet or no longer meet the conditions, while lists are static collections of profiles that you add via forms, integrations, or imports.

Why the campaign builder shows an estimated audience

When you select a list or segment in campaign setup, Klaviyo shows Estimated recipients instead of the raw list or segment size. This estimate applies additional rules on top of membership in the list or segment, such as:

  • Suppression status (e.g., unsubscribed or bounced profiles)
  • Whether a profile can receive marketing on the selected channel
  • Lists and segments you exclude from the campaign

Because of these filters, the estimated audience is often smaller than the list or segment size you see in the Lists & segments view. Your scheduling settings determine when Klaviyo selects recipients: shortly after scheduling or once before sending starts. Later skips can reduce the number of messages actually sent. Learn how to change when recipients are determined.

How often segment counts update

Dynamic segment counts update as underlying data changes, including:

  • New events (e.g., opens, clicks, orders) that cause people to qualify or disqualify
  • Profile property changes
  • Subscription status updates and suppressions

Most active segments update close to real time, but changes can take time to process. The count you see in Lists & segments can differ from:

  • The estimated audience in the campaign builder, which accounts for send‑eligibility rules
  • The number of messages actually sent, after recipients are selected and send-time checks are applied

Learn more about how segments update.

How suppression, consent, and Smart Sending affect counts

Even if a profile belongs to your chosen list or segment, Klaviyo will not send to them if:

  • They are suppressed for the channel, such as an email profile suppressed after an unsubscribe or bounce.
  • They cannot receive marketing on that channel. SMS requires SMS consent. For email, a profile marked Never subscribed is not automatically excluded in every account; eligibility depends on your account’s consent settings and the profile’s suppression status.
  • They are excluded by Smart Sending, when enabled, because another marketing message was sent to them on the same channel within the applicable Smart Sending window.

The estimate accounts for channel eligibility and audience exclusions. Smart Sending is checked when messages are sent and can reduce the actual send count further.

Getting segment counts with the Segments API

You can retrieve segment-level information, including counts, using the Segments API. Request a count for an individual segment; the endpoint that lists all segments does not return profile counts.

Use a private API key or OAuth token with segments:read permission. To retrieve a segment count:

  1. If you need the segment ID, request GET /api/segments/ and find the segment in the response. Follow links.next if the response has more pages.
  2. Request GET /api/segments/{id}/?additional-fields[segment]=profile_count, replacing {id} with the segment ID.

In the individual segment response, look for:

  • data.id: the segment identifier, which you can use in other API calls. data.attributes.created gives the date the segment was created.
  • data.attributes.profile_count: the number of profiles in the segment when the count is read. This is a membership count, not a campaign recipient estimate.

Because segment membership is dynamic, API-returned counts are a point-in-time snapshot and can change between calls. If data.attributes.is_processing is true, wait for processing to finish before comparing counts.

Best practices for syncing counts to external tools

If you sync segment counts into a BI tool or external dashboard:

  • Pull counts on a consistent schedule (e.g., daily at the same time) to make trend comparisons easier.
  • Align your reporting time zone between Klaviyo and your external system.
  • Document any additional filters you apply (e.g., removing suppressed profiles) so downstream users know why numbers may differ from what they see in the app.

When reconciling differences between segment sizes, estimated audiences, and send counts, always compare:

  • The audience definition (list/segment conditions),
  • The send-eligibility rules (suppression, consent, Smart Sending),
  • The time at which each count was taken.
Was this article helpful?
Use this form only for article feedback. Learn how to contact support.

Explore more from Klaviyo

Community
Connect with peers, partners, and Klaviyo experts to find inspiration, share insights, and get answers to all of your questions.
Partners
Hire a Klaviyo-certified expert to help you with a specific task, or for ongoing marketing management.
Support

Access support through your account.

Email support (free trial and paid accounts) Available 24/7

Chat/virtual assistance
Availability varies by location and plan type