Bento

Jesse Zach has some dark mode plugin on during this video, Bento does not look like this normally haha!

Managing Subscriber Data

View on YouTube

Know how tags, custom fields, and auto-decaying tags work so you can store and act on subscriber behavior.

Bento gives you two main tools for storing information about your subscribers: tags and custom fields.

Knowing when to reach for which is one of those things that'll save you a ton of headaches later when your automations start getting complex.

So let's cover what each one is, how to decide between them, and a couple power features. Then you'll set up some test data we'll use for targeting practice in the upcoming lessons.

For the full reference on both concepts, see the Tags and Fields pages in the Bento docs.


Tags

A tag is a simple binary label you attach to a subscriber. They either have it, or they don't. You can't have the same tag twice on the same person.

Tags are great for categorical things: marking what someone has done, where they came from, or what group they belong to.

Common patterns I use:

  • Flag – Customer – ProductName
  • Email Course – Whatever – Lesson 1 Completed
  • Event – Webinar – July 2026 Attended

Tags are created automatically the first time you use them. You don't need to define them in advance.

This makes imports and API integrations easy, but be careful not to accidentally create hundreds of tags via typos.

(Because of this, I personally DO prefer to create my tags in advance, so I can just copy and paste them exactly as they're stored.)

You can add and remove tags manually from a subscriber's profile, through Flows, via the API, or during CSV imports. You'll know how to do all of these by the end of the training.

My naming advice: Pick a consistent convention and stick with it. I namespace mine with dashes as separators, going from broad category to specific: Category – Sub-Category – Specific State. Friendly readable text, not kebab-case slug formatting.

I like this because it makes your tag list scannable when you have hundreds of them, and they sort and group themselves naturally.

But that said, you can do whatever you find intuitive and helps you stay organized.


Custom Fields

A custom field is a key-value pair on a subscriber.

The key is the field name; the value is whatever data you want to store.

Unlike tags, fields hold a specific value: text, a number, a date, or a boolean (true/false).

Setting a new value overwrites the previous one.

Bento has a few built-in fields (email, first_name, last_name).

Everything else is a custom field you create. Like tags, they're created automatically the first time you set one on a subscriber.

Common patterns:

  • onboarding_status: "onboarded"
  • plan_type: "enterprise"
  • last_purchase_date: "2025-06-15"
  • some_numeric_value: 2500

Gotcha: Field names are case-sensitive. Company and company are treated as two different fields.

I recommend all lowercase with underscores and being consistent about it.

Fields are also what power personalization in your emails via the "Liquid" code/templating language (more on this later):

Hey {{ visitor.first_name | default: "there" }}, Your current plan is {{ visitor.plan_type }}.

We'll cover Liquid in depth in the How To Use Liquid In Bento For Epic Power lesson. For now just know that fields are where the data lives that Liquid pulls from.


When To Use A Tag vs. A Field

This is the decision that trips people up most. Here's the framework I use:

Ask yourself: "For this piece of data, can the subscriber be multiple values at once?"

  • NO (mutually exclusive states) → Use a field.

    • Example: onboarding_status = "onboarded" or "not_onboarded." They can only be one at a time.
    • Example: plan_type = "free", "pro", or "enterprise." They're only on one plan.
      • (If they CAN be on multiple plans at once, generally DO NOT use fields; go for tags instead)
  • YES (accumulating attributes) → Use tags.

    • Example: Products purchased. Someone can buy Product A, then later buy Product B. Each purchase gets its own tag: Purchased – Product A, Purchased – Product B.
    • Example: Webinars attended. They can attend many; each one gets a tag.

The counting edge case:

Tags can only exist on a subscriber once. So if you need to know how many times something happened (not just whether it happened), tags alone won't cut it.

The simplest approach that doesn't require Liquid: create a separate numeric field for each thing you're counting, then increment it in a Flow.

(Flows even have incrementor actions to make this easy. This will be a breeze for you once through the Events & Flows Overview lesson)

  • product_a_purchases: 3
  • product_b_purchases: 1

There are fancier approaches using comma-separated field values and Liquid parsing, but those add complexity.

We'll cover that in the Liquid lesson if you need it. For most people, separate counter fields work great.

Rule of thumb: If it's a state, use a field. If it's a badge or flag or thing they did, use a tag.


Auto-Decaying Tags

This is a newer feature Jesse added that I haven't used much, but is super nifty if you want to keep things simple on the Workflows front.

You can set a tag to automatically remove itself from a subscriber after a certain number of days.

Use cases:

  • Promo windows: Tag someone as Flag – In Promo Window when a sale starts. Set it to decay after 7 days. No need to remember to manually remove it or build a cleanup flow.
  • Trial periods: Tag someone as Flag – In Trial on signup. Set decay to 14 days. Build a flow that fires when the tag is removed to trigger your conversion sequence.

You configure this in the tag's settings within Bento.

For my taste, these are a bit too low-visibility & low-control, but alas, I am a nerd with my Bento build-out.


Quick Preview: How This Data Powers Segments

Segments in Bento are dynamic groups that update automatically based on rules you define.

No manual maintenance; when someone meets the criteria, they're in. When they stop meeting it, they're out.

(See Segments in the Bento docs for the full reference.)

We'll build real segments in the Defining Segments & Scheduling Emails lesson. But here's a quick preview of how the data you're setting up becomes useful:

  • "onboarding_status equals onboarded" - targets only onboarded users
  • "last_purchase_date is within the last 30 days" - targets recent buyers
  • "has tag Flag – Enterprise" - targets anyone tagged as an enterprise customer
  • "does not have tag Flag – Unsubscribed From Promos" - excludes people who opted out

You can also browse and filter your subscriber list at any time under People in Bento.

Think of it as a quick ad-hoc lookup before you commit to building a full segment.


Action Steps

We're going to set up some test subscribers with specific data that we'll use in the next couple lessons for segmentation and scheduling practice.

1 - Create Three Test Subscribers

Use your own email with the + alias trick:

  • yourname+bentotraining1@your_google_workspace_website_url.com
  • yourname+bentotraining2@your_google_workspace_website_url.com
  • yourname+bentotraining3@your_google_workspace_website_url.com

e.g. Jesse could do this for his jesse@bentonow.com address:

  • jesse+bentotraining1@bentonow.com
  • jesse+bentotraining2@bentonow.com
  • jesse+bentotraining3@bentonow.com

Both will land in your normal inbox, but Bento treats them as separate subscribers.

This gives you real records to experiment with.

2 - Tag The First 2 Subscribers

Add the tag Flag – Customer – MySaaSProduct to test subscribers 1 & 2.

This simulates two users who are both customers of the same product.

3 - Set A Custom Field On Test Subscriber 1

On your first subscriber (+bentotraining1), set the custom field onboarding_status to onboarded.

Leave it unset/empty on your others.

4 - Confirm Your Setup

You should now have:

  • Three test subscribers in total
  • Two with the Flag – Customer – MySaaSProduct tag
  • One with onboarding_status = "onboarded"
  • One with onboarding_status empty

We'll use this data to practice targeting and excluding subscribers in the upcoming lessons.


When to move on

You are ready for Creating Your First Emails when you:

  • Have three test subscribers using the +bentotraining alias pattern
  • Tagged subscribers 1 and 2 with Flag – Customer – MySaaSProduct
  • Set onboarding_status to onboarded on subscriber 1 only
  • Confirmed subscriber 2 has the customer tag but no onboarding_status value
  • Confirmed subscriber 3 has neither the customer tag nor onboarding_status set

Video transcript

All righty. In this lesson, we're going to look at managing subscriber data. So the most common two ways you'll do this in Bento will be either with tags or fields. So if you've used other email marketing tools before, you are almost certainly familiar with tags.

I think this is what most people find most intuitive. But in case you're new to the concept, tags allow you to basically just mark subscribers as having done certain types of things. So a few examples here, like you might add a flag if they are a customer who's purchased a specific product, or a tag to flag them as a customer of any product, so that you can easily message all of your customers. Basically, anything you ever want to be able to select a group of your subscribers based on, a tag is really useful for.

I would say that most-- I've done a lot of email marketing platform build-outs for clients over the years and stuff, and I've noticed most people kind of overuse tags and underuse fields. Like the concept of the custom field feels a little scary because of how a custom field can hold any kind of value, whereas a tag, it's this binary, like someone either has the tag or they don't. But custom fields are really powerful, and where I like them most are for instances where somebody could get, through maybe like an automation bug or whatever, somebody could get two tags that they should never have at once. I've had something in the past where, let's say, somebody got the tag of Customer Product A, and then they also had the tag of Refunded Product A, but they had both.

So what does that mean? Does it mean they bought it and then they refunded, and then they bought it again? Or does it mean they bought it and they refunded, and when they refunded, we didn't take away the customer tag? No way of knowing, and that's where you get into these kind of tricky places if you're managing these multi-value option fields with tags, and that's where I really like custom fields.

So, good example would be onboarding status. That's a great example of something that would be great for a custom field. So let's suppose it's not as simple as they're either onboarded or they're not, because for that, a tag is probably okay. But let's say that it's like they're either at onboarding step one or onboarding step two or onboarding step three, or they're totally done.

In that case, having different tags for each of those onboarding steps would be a nightmare because of the same situation I said a second ago, I won't repeat it. But having a custom field is great because you can just change that custom field value to step one or step two or step three or whatever, and then you can select users where onboarding status equals step one or onboarding status equals step two. That's very easy to do in Bento. So, for example, if we are under People and we just edit rules for who we're viewing.

We'll get into this more later, so don't worry too much about trying to replicate what I'm doing here, but I believe I already created a [inhales] custom field. Let me find it. I don't remember what I called it. So in my case, it looks like I created the custom field a little bit too recently.

Bento sometimes caches their values, so it takes a minute to show up. But basically, I created this field on a test user where it says Marketing Platform Subscription Status, and I set it to Refunded. And so what we'd normally be able to do is go in here and just paste that key and it would show up. But in this case, since it's not there yet, I'll just show you with some other field.

So here you go. So pretend this country name was the marketing status one, or better yet, the onboarding one, since that's what we were talking about. You could do something where it's like, if you wanted to do they're in step one or step two, you could do this. So step one, and then within a group, rules are an and, which again, we'll talk more about this later, but what we would do is we would just create another one, step two.

So this set of conditions would be essentially saying, "Show me anyone whose onboarding status is step one or step two." And later, you'll even learn that we could save this as a pre-saved segment, so all of these rules together, you don't have to type them every time you want to use them. You just select the segment, like Onboarded or Mostly Onboarded or Not Onboarded, and you can send emails to just those people. So one convention that's smart is for tags, it's pretty normal for people to use this kind of friendly naming convention where you have spaces and capital letters and stuff like that. But for custom fields, I would encourage you to adopt the convention of lowercase with underscores and not having any special characters, because sometimes if a field is case sensitive, you might get unpredictable data because the field is maybe stored to the capital C when you thought it was lowercase C, that kind of thing.

I believe I saw this in the Bento docs, so I just wanted to flag that for you. So the thing I want to leave you with is a little bit of a framework for knowing when to use tags versus fields, because it's an easy place to get tripped up. I like to ask myself, for a given piece of data, can a subscriber be multiple things at once? So with the onboarding example, they can't be both step one and step two at the same time.

They can only be one of those two states at any given moment, and in that case, we use a field. But if somebody could be multiple states, like they bought product A, they can also buy product B, that's when tags can be really good, because then you just add the Bought Product A tag, you add the Bought Product B tag, they have both, perfectly fine. Other cool things with custom fields in Bento is that you can increment custom fields. So if you want to keep a log of each time something happens or the number of times something has happened, you can do that with a custom field, and you couldn't really do that with tags because once you add a tag They have that tag.

You can't add a tag twice. You can, but they won't have it twice. They'll just maybe get the event fired for it, but that's an advanced concept we'll talk about later. Couple other little random notes.

Bento has this nifty feature called auto decaying tags. I haven't really used it, but if there's ever something where you don't want to mess with a complex flow or something, and you just want somebody to be temporarily marked as something. So in this case, we have in promo window or in trial as the examples. Other ones could be the concept of being a new subscriber.

Somebody's only a new subscriber for so long, what you could do is you could go in and you could create a tag called new subscriber, and you can enable the decaying after, say, 14 days. And so after two weeks, so they receive the tag today, two weeks later, it's going to go away. And what that means is that you can send broadcasts only to subscribers with the new subscriber tag without worrying about somebody hanging onto that tag for months down the line, which is a useful feature to know about. We already talked a bit about segments.

We'll get into those more later. As I mentioned before, it allows you to just stack a bunch of rules for easy reuse. So from here, what I want to have us both do is set up some test subscribers, because in the coming lessons, we're going to do some practice action steps together, and we will need these test subscribers first. So if you haven't heard of this little plus sign trick, if you're using Google Workspace, and I think maybe Gmail also, but definitely Google Workspace, you can take your normal email address and do a little plus sign and then something else after your normal email address, and that'll have it be a different subscriber in Bento and still route it to the same inbox.

So for example, Jesse's email address is jesse@bentonow.com. So he could do jesse+bentotraining1@bentonow.com, jesse+bentotraining2@bentonow.com, et cetera. One note for Bento is that it has some safeguards in place to prevent spam subscribers. So [clears throat] careful about using the word test in your test subscriber names.

Bento might auto unsubscribe them. And also be careful about using a bunch of numbers. For a while, I was creating my test subscribers with a date stamp. So I'd say zack+(202607151132).com.

So in other words, I'm seeing the clock, it's 11:32 on July 15th. So I would put that all in there so that I would never create the same one twice. But all those numbers side by side would often get it auto unsubscribed. So I would say for now, just use this pattern, the +bentotraining1, 2, 3.

So I'll go do that for 1, and I won't make you watch me do it for a bunch. So I've got my Zack Swinehart email here, so might as well use that. So I would go new user, zack+bentotraining1@zackswinehart.com, and then add. And it looks like it did not automatically unsubscribe them, which is great.

I might as well show you the others so that we can see how that would go. So if I did one that was zack+(202607151133).com. I mostly do this if I'm testing cart purchases where I need to do a lot of sequential things. And look at that.

See, it got blocked from the spam API and auto unsubbed. So that's where you would want to not do that. I can resubscribe them, but it still keeps them blocked. It's never perfect compared to just doing a good pattern in advance.

So create those first. I'll go create the third one real quick, and the second one for my sake. Okay, so I created those, and I don't think I ever told you explicitly, you do this under the People tab. So sorry for not saying that.

That's where you do it. And so you'll want to get all three of those made. So you can see I've got one, two, three. And then move on to step two, which is we're going to tag the first two of them with this specific tag.

And you can just use the placeholder for now. So if you have a SaaS product, I would still recommend you make this my SaaS product one, and maybe even write example or something so that you know it's a test one. And later, once you've completed the training, roll out your real setup. So what did I say?

First two? Yeah. Okay, so subscribers one and two. So we're going to click into number one.

On the left here, we can click plus, paste here, enter manually, and then add tag. And then I'll go do that for Bento training 2 as well. And in this case, the tag should already be here. Yeah.

So we just click that, click Add tag, and we see that for them as well. Great. And now on test subscriber three, or sorry, test subscriber one, my bad. We're going to do onboarding status as a custom field to onboarded.

So let's go back, test subscriber one. And then here on the left where it says Fields, just click the little plus sign, paste in onboarding status, and then the value as onboarded. Click Add Field. We should see that show up. [clears throat] And so this should have us in good shape.

So basically at this point, we have three subscribers. The third one has nothing special, no tags, no fields. The first two have the my SaaS product customer tag, and then the first one has an onboarded onboarding status, and the second one has it empty. So you can go check that if you want to, but it's pretty simple, so I bet you got it right.

And I think that's it for here. Yeah. So that wraps up for now. With these test subscribers made, you'll have everything you need to do the examples and practice in the upcoming lessons.

So I'll see you soon.