Quick answer
In Segments → New Segment, open the Filter Editor and combine criteria like Creation Date, Field, Tags, KPI and First / Last Location with All (AND) or Any (OR). Dates accept relative values and Birthdate mode; the radius selects cities. BIP recalculates the segment before every send.
Talk only to the people who matter: today's birthdays, customers who've gone quiet, everyone in the cities near your new store. A segment groups these people by rules and keeps itself up to date: anyone who starts meeting the rules gets in, and anyone who stops meeting them drops out.
What you need
- A BIP account (the free plan works)
- Contacts in BIP, imported from a spreadsheet or arriving through the API
- The custom fields and KPIs created in Settings, if you'll filter by them
What you'll get
- Dynamic audiences: you define the rule once and BIP recalculates who's in before every campaign send.
- Dates that move on their own: "created in the last 7 days" or "not updated in 30 days", without editing the rule every day.
- Anniversaries of any date, comparing only the day and month: birth, first purchase, contract signing.
- Cities within a radius in km or miles, picked on the map with city search.
- An instant count and the segment's contact list, with CSV download.
How it works
- 1Create the segment and open the Filter Editor
- 2Combine criteria with All (AND) or Any (OR)
- 3Save: BIP recalculates who's in before every send
Rules live in the Filter Editor and have three levels:
- Criterion: one condition, like Tags → Includes any →
customer. - Filter: a block of criteria. With two or more criteria in the same block, you choose whether the contact must meet All (AND) or Any (OR) of them.
- Group: the set of filters. With two or more filters, you again choose between All (AND) and Any (OR).
That way you build rules like "(customer and from Curitiba) or (more than 3 orders)" without writing a line of code.
The segment is dynamic. Every time a campaign goes out, including each run of a recurring campaign, BIP recalculates it with the data at that moment. Anyone imported yesterday who meets the rules is already in today's send.
Step by step
1. Create the segment
- In the menu, click Segments. The list shows segments by group, with the date of the last update.
- Click New Segment. BIP creates an [untitled] segment, with the Draft badge, and opens its screen.

Screenshot coming soon
2. Give it a name and a group
- Click Settings. The Segment Settings panel opens.
- Fill in the Name and, next to it, pick an emoji to identify the segment in the list.
- If you like, write a Description: it shows up when you pick the segment in a campaign.
- Under Group, choose where the segment sits in the list. Groups are created in Settings → Groups → Segments Groups.
- Click Save.

Screenshot coming soon
3. Add the criteria
- Click the 0 filter(s) selected button. The Filter Editor opens.
- Click Add Criteria and choose one of the 10 criteria.
- Fill in the criterion: usually Operator and Value. Some first ask for the Type, the Field or the Indicator (see the Reference below).
- To add another condition to the same block, click Add Criteria again. With two or more criteria, the top of the block shows Match … of the following criterias:. Choose All (AND) to require every condition or Any (OR) to accept any of them.
- To remove a criterion, click its trash icon and confirm.

Screenshot coming soon
4. Combine filters or import existing rules
- Click Add Filter to create another block of criteria.
- With two or more filters, the top of the editor shows the choice between All (AND) and Any (OR) across blocks. Use Any (OR) to bring different audiences into the same segment.
- To start from another segment's rules, click Import from Segment and choose the segment. Its rules replace the ones in the editor; the original segment doesn't change.
- Click Close.

Screenshot coming soon
5. Check the count and save
- When you close the editor, BIP calculates the segment right away (Building leads segment...) and shows the result in the heading: N matches of T, meaning how many contacts meet the rules out of all the contacts in the account.
- Check the list below. Search by Name, Email or Phone and sort by name, creation date or last update. Click a contact to see the full profile.
- Click Save. The button turns green with Saved and the Draft badge disappears.
Only saved segments are available to pick in campaigns. While there are unsaved changes, the subtitle shows Unsaved Changes.

Screenshot coming soon
6. Use the segment
- To send, create a campaign in Campaigns and pick the segment under Segments. See Campaigns: one-time, recurring and API-triggered.
- To take the list to a spreadsheet, click Download CSV.
- To create a variation, go back to the segment list and click Duplicate (copy icon). The copy opens as a Draft, named segment name (Clone). Adjust the rules and click Save.

Screenshot coming soon
Reference
The 10 criteria
| Criterion | What it compares | How you fill it in |
|---|---|---|
| Creation Date | The day the contact joined BIP | Date Operator and Value (absolute or relative date) |
| Name | The contact's name | Text Operator and Value |
| The contact's emails (one match is enough) | Text Operator and Value | |
| Field | A custom field | Field, then Operator and Value according to the field type |
| First / Last Location | The city, region and country recorded for the contact | Type, then Operator and Value (text or radius on the map) |
| KPI | The numeric value of an indicator | Indicator, Operator and Value |
| Phone | The contact's phone numbers, in international format (+5541998765432) | Text Operator and Value |
| First / Last Source | Where the contact came from the first or the last time | Type, Operator and Value |
| Tags | The contact's tags | List Operator and Value (existing or new tags) |
| Last Updated | The day of the last update to the contact's profile | Date Operator and Value (absolute or relative date) |
Text operators
They apply to Name, Email, Phone, the text options of First / Last Location and First / Last Source, and fields of type String, Phone and Location.
| Operator | The contact gets in when the value… |
|---|---|
| Equals / Not equals | is (or isn't) exactly what you typed |
| Contains / Not contains | has (or doesn't have) the text you typed |
| Starts with / Not starts with | starts (or doesn't start) with the text |
| Ends with / Not ends with | ends (or doesn't end) with the text |
| In / Not in | is (or isn't) in a list. In Name, Email, Phone and fields, type each item and press Enter |
| Is empty | wasn't filled in |
List operators
They apply to Tags and to fields of type Array. In Value, search for existing tags or type a new one and press Enter.
| Operator | The contact gets in when they… |
|---|---|
| Includes any | have at least one of the values |
| Includes all | have all of the values |
| Does not include any | have none of the values |
| Does not include all | don't have all of them at once (they may have some) |
| Is empty / Is not empty | have no value (or have some value) |
Number and KPI operators
| Operator | Number field | KPI |
|---|---|---|
| Equals / Not equals | Yes | — |
| Greater than / Greater than or equals | Yes | Yes |
| Less than / Less than or equals | Yes | Yes |
| Between (From and To, both included) | Yes | Yes |
In the KPI criterion, choose the Indicator (the KPIs created in Settings), the Operator and the Value. Anyone who has never received a value for that KPI counts as 0. For an exact value, use Between with the same number in From and To.
Operators for Boolean fields
| Operator | What it checks |
|---|---|
| Is true / Is false | Whether the field is set to true (or false). Use these day to day |
| Is truthy / Is falsy | Technical variations of true and false |
| Is nil / Is null / Is undefined / Not nil / Not null / Not undefined | Technical checks for a missing value |
Date operators
They apply to Creation Date, Last Updated and fields of type Date.
| Operator | The contact gets in when the date is… |
|---|---|
| After / After or equals | later than (or equal to) the value |
| Before / Before or equals | earlier than (or equal to) the value |
| Between | within the range from From to To, both included |
| Equals | on the same day as the value |
Absolute or relative date
Click the Value of any date criterion to open the picker. Under Date Mode, choose:
| Option | What it does |
|---|---|
| Absolute → Select Date | A fixed date on the calendar |
| Relative → Relative Time | A number and a unit (Days, Months or Years) counted from today. A negative number is the past (-30 = 30 days ago), a positive one is the future, 0 is today |
| Start of Day | Sets the time to 00:00 |
| End of Day | Sets the time to 23:59. One of the two is always on; with Equals, the whole day already counts and they don't appear |
| GMT Offset (e.g., +00:00, -03:00) | The timezone used to calculate "today". It defaults to the account timezone; for Brasília, -03:00 |
| Preview | Shows the date calculated right now, so you can check it |
In Between, each end has its own picker: you can mix an absolute date with a relative one.
Birthdate mode
In Field criteria of type Date, Relative mode shows the Birthdate toggle (Birthdate within selected period). When it's on, BIP compares only the day and month and ignores the year. It works for any date that comes around every year: birth, first purchase, contract start. Creation Date and Last Updated always take the year into account.
Location and radius
In the First / Last Location criterion, choose the Type:
| Type | Compares |
|---|---|
| First Location / Last Location | City, region and country together. Use Contains → Curitiba |
| First Location (Country) / Last Location (Country) | Only the country |
| First Location (Region) / Last Location (Region) | Only the region (state) |
| First Location (City) / Last Location (City) | Only the city |
| First Location (Geo) / Last Location (Geo) | Distance on the map, with In radius or Not in radius |
In the (Geo) options, click Select Region:
- In Search, type at least 3 letters of the city name and pick it from the list. The map moves there.
- In Radius, enter the distance (from 0.5, in steps of 0.5).
- In Unit, choose
kmormi. - To adjust the center, drag the marker or click another point on the map. Then click Close.
Location in BIP is always by city. The radius selects the cities whose center falls inside the circle, never neighborhoods or addresses.
First Location is recorded when the contact signs up through the browser. Last Location is updated when the contact, already identified, visits your site with the BIP script. For contacts who arrive by spreadsheet or through the API, store the city in a custom field of type Location and use the Field criterion: it offers the same options, with the field name followed by (Country), (Region), (City) and (Geo).
Source
In the First / Last Source criterion, choose the Type: First Source (Type), First Source (Form ID), First Source (URL), or the same options for Last Source. In the (Type) options, the Value is a list:
| Value | Where the contact came from |
|---|---|
| API | The BIP API and integrations that use the API |
| Internal | Manual entry in the dashboard or a spreadsheet import |
| Page | A page or form |
| Endpoint, Facebook, Flow, Instagram, TikTok, WhatsApp, Other | The other sources BIP records |
(URL) compares the address of the source page, when there is one.
Criteria groups
| Where | Option | Result |
|---|---|---|
| Inside a filter | All (AND) | The contact must meet every criterion in the block |
| Inside a filter | Any (OR) | Meeting one criterion in the block is enough |
| Between filters | All (AND) | The contact must pass every block |
| Between filters | Any (OR) | Passing one block is enough |
Actions on the segment screen
| Action | What it does |
|---|---|
| New Segment (in the list) | Creates an [untitled] segment as a Draft and opens its screen |
| N filter(s) selected | Opens the Filter Editor. The number is how many criteria there are |
| Import from Segment | Copies another segment's rules into the editor |
| Settings | Name, emoji, Description and Group |
| Save | Saves the segment and removes the Draft badge |
| Download CSV | Downloads a CSV (UTF-8) with one row per contact in the segment: the main data (such as name, emails, phone numbers, tags, dates, location, source and KPIs) and one column per custom field |
| Duplicate (in the list) | Creates a copy as a Draft, named (Clone) |
| Trash icon (in the list) | Deletes the segment. A segment used by a campaign can only be deleted after it's removed from that campaign |
BIP Full only
On BIP Full, the same editor appears in the Flows filter with one extra criterion, Event: Entity Type Email, URL or WhatsApp; Event Type View (Open), Click or Custom (email and URL) and Delivered, Read or Replied (WhatsApp). The Source option (Form ID) identifies people who came in through a BIP form.
Ready to copy
Today's birthdays
First, create the Date of birth field (type Date) in Settings → General → Fields.
| Criterion | Operator | Value |
|---|---|---|
| Field → Date of birth | Equals | Relative: 0 Days, Birthdate on |
Use it with a Recurring campaign, Daily, at 09:00, with Allow Lead Re-entry on and a Cooldown Period (Days) of 300. That way each person gets the message once a year.
Inactive for 30 days
| Criterion | Operator | Value |
|---|---|---|
| Last Updated | Before | Relative: -30 Days, Start of Day |
| Tags | Includes any | customer |
Combine the two criteria with All (AND). Customers whose profile hasn't been updated in the last 30 days get in.
New in the last week
| Criterion | Operator | Value |
|---|---|---|
| Creation Date | After or equals | Relative: -7 Days, Start of Day |
Cities within 30 km
First, make sure the City field (type Location) is filled in on your contacts, through import or the API.
| Criterion | Operator | Value |
|---|---|---|
| Field → City (Geo) | In radius | Search Curitiba, Radius 30, Unit km |
For people who visit your site with the BIP script, also use First / Last Location → Last Location (Geo), with the same values, in a second filter combined with Any (OR).
Customers with area code 41
| Criterion | Operator | Value |
|---|---|---|
| Phone | Starts with | +5541 |
VIP: tag or many orders
First, create the Orders KPI in Settings.
| Filter | Criterion | Operator | Value |
|---|---|---|---|
| 1 | Tags | Includes any | vip |
| 2 | KPI → Orders | Greater than or equals | 5 |
Combine the two filters with Any (OR): anyone with the tag or with 5 orders or more gets in.
Names and descriptions
🎂 Today's birthdays — Contacts whose birthday is today (Date of birth field) 💤 Inactive for 30 days — Customers with no profile update in the last 30 days 🆕 New in the last week — Contacts created in the last 7 days 📍 30 km around Curitiba — Contacts in cities up to 30 km from Curitiba ⭐ VIP — vip tag or 5 or more orders
How to measure
- Close the Filter Editor after each change: the heading shows N matches of T. That's the audience size if the campaign goes out now.
- Search the list for contacts you know should be in (or out). Open the profile to check the date, tag or city that decided the result.
- Click Download CSV to review the list in a spreadsheet or share it with your team.
- After the send, compare the count with Processed in the campaign stats. The difference comes from people in more than one of the campaign's segments (they get it only once) and from those the Lead Re-entry Window held back.
Frequently asked questions
Does the segment update itself?
Yes. BIP recalculates the segment before every campaign send, including each run of a recurring campaign. On the segment screen, the count is recalculated whenever you close the Filter Editor.
Does someone in two segments get the campaign twice?
No. In a campaign with several segments, each contact gets the message once per send, even if they show up in more than one.
Can I filter by neighborhood?
Not by location: it's always by city. Store the neighborhood in a String field or a tag (during import or through the API) and filter by Field or Tags.
Why don't my imported contacts match the location filter?
First / Last Location comes from the browser: from the contact's own sign-up and from visits to your site with the BIP script. For people who come from a spreadsheet or the API, store the city in a field of type Location and filter by Field, with the same city and radius options.