Understanding HubSpot’s Lead Scoring System

Matthew Deal

This is an attachment to a blog post I put together about hacking HubSpot's lead scoring system. To make the video easier to follow along, this text version of the video covers everything that I go over in the above video.

One of the biggest issues that I think a lot of people struggle with, when it comes to HubSpot lead scoring, is that it's just so fundamentally different from other lead scoring systems. This mostly stems from the fact that HubSpot is really reliant upon data existing in fields.

So, whenever you're in HubSpot and you're even considering setting up lead scoring system for the first time, or you're planning out lead scoring systems, and trying to get consensus on a team for what you're later going to put into HubSpot— always remember that HubSpot wants to see, almost always, the data that you're using as the criteria for a particular field in that lead scoring system, or excuse me, in fields to be able to power the lead scoring system

How Hubspot Lead Scoring Works

Correctly using Hubspot’s lead scoring system is different than other eCRMs and marketing automation platforms.

That’s because, if it's not in those fields, unlike other lead scoring systems which may be basing things off of particular events like form submissions or downloads or email opens or stuff like that, that is really based on behavior— HubSpot's really looking for what you have in a field.

So if it doesn't exist in a field, you maybe sometimes can do it, but it's mostly going to push you towards that end. So let's dive in right now.

Getting Started with HubSpot’s “Lead Scoring” System

1. Go to the cog wheel in the right hand corner and go to “Settings”, then select “Properties” 

The cog wheels is the go-to for accessing the deeper settings of Hubspot.

The cog wheels is the go-to for accessing the deeper settings of HubSpot.

So, what you want to do is, go up to your cog wheel in the top right-hand corner of HubSpot to be able to get to your settings, and then we're going to be working in properties.

And specifically, again, this is a reminder to keep in mind, when we talk about objects, objects in HubSpot are really fundamentally focused on contacts and companies, also deals, but today we're going to focus on contacts, and then specifically, and this is a little bit buried, like most: I think if you look at Active Campaign or Pardot, you have lead scoring systems that feel like they're broken out and they're a little bit robust. I would argue that this kind of feels like a little bit of an add on.

2. Go to Properties under Contact Settings and type in “HubSpot”, then look for HubSpot Score

So you're going to want to go to properties under contact settings and then look for a property called... You just type in “HubSpot” and then look for the HubSpot score, and granted, if you... I've seen some versions of HubSpot not have access to this because HubSpot's really hard and fast about “here's the level of HubSpot you're at”, whether that be Marketing Hub enterprise or sales enterprise or service or whatever else like that, and then not having access to this. 

Most versions of Hubspot should have access to the Hubspot score property.

Most versions of Hubspot should have access to the Hubspot score property.

But generally speaking, if you're on a paid version of HubSpot, you should have access to this.

3. Click HubSpot Score to Create Positive Attributes set

It's a default field. It's not something that you need to create. So let's click and dive into HubSpot score. And we've got a couple of rules here. I'm going to clear these out just to... And we're going to save this just to be able to take a look at it. Let me do it again. I'm not the biggest fan of this particular interface for scores per se.

So HubSpot score is essentially lead scoring in HubSpot. You essentially are adding scores for either positive attributes or negative attributes associated with a particular contact. So anything that we want to add and say, "Hey, this person is based on..." And I'm a big fan of something that's definitive for a lot of B2B businesses in terms of decision-making power and expertise of focus areas, something like job title, and we'll use that example a lot today because I think it really illustrates the point I'm trying to make in terms of HubSpot fields and what exists and what's possible and things like that. So what HubSpot is great at, again, have a data in field, it's really, really simple.

So any situation in which you have data from form submissions, or you have a chat bot that you're collecting it with through HubSpot or another tool, or data augmentation, where let's say you're using Crunchbase or another third-party database to be able to match contact records and you're pulling in attributes from there.

That stuff works really well. And I think that that is really what the system is intended for. It's not intended to like this other example that I talk about with engagement, which we'll talk about in a moment. So let's do an example of that:

So let's say that I know a particular job title equates to having a high likelihood of closing. In this case, we'll just make up and say that somebody who has the word operations in their job title tends to be the ideal candidate that we're looking for in terms of marketing qualified leads or outward sales qualified leads.

In this case, what we're going to do is create a new positive attributes set.

Positive attributes add to your contact’s Hubspot score.

Positive attributes add to your contact’s Hubspot score.

So in this case, we're going to look at contact properties, and what we're going to look for is job title. It's a default field in HubSpot, so you should already have that there. So in this particular example, I'm a big fan of searching individual strings. It's rare that I'm putting in... It's rare that anybody in reality that their job title always matches what you have in your mind. Some people are using specialist or marketing manager or operations manager or developer or whatever it may be. It's not always going to match what your ideal customer is, and everybody has a little bit of variation on what those things are.

So I like to say if contains any. In this case, we're looking for somebody who works in operations, so this might be somebody who was... Maybe somebody who's at the C level who has operations in their title. Maybe somebody who's at the specialist or marketing level, or specialist or director level, but they have operations in their title. And whenever we see that come through, we're going to set the number of points we want. In this case 10. Again, random example, doesn't matter in this particular case.

4. Save your Work and Keep Key Caveats in Mind

We're going to hit save, which is a huge tip that will save yourself later. I don't know why it does this for me particularly, but it seems like if I don't, it's very easy to go in with your lead scoring and start setting up all of these values and not realize you don't have this refreshed, or you don't have these values saved into the HubSpot criteria. So I just recommend after every time that you add a negative set or a positive set, just hit save. It's so easy to do, and then it just pops you right back in.

Just hit the save button after every new rule you add.

Just hit the save button after every new rule you add.

So one of the key aspects to think about this, and I don't think that most people will struggle with this particular issue. Super simple. If the job title contains operations, then add plus 10 to their HubSpot score. Again, that's just HubSpot's name for lead score. And that doesn't matter, it doesn't speak to anything, one, about the context of how that data got there, so whether this person submitted a form on a guide and job title was one of the required form fields and they put in their job title as operations, or if I manually created a contact for a particular person that day and their job title contained operations, if I'm using a chat bot, if I'm using another integration that exists with HubSpot. It's just looking for that value in that field. It's not speaking to the context in which it got there, and it's not speaking to the context of anything more than you're putting in the individual rules there. So something to keep in mind.

The other big caveat, which a lot of people struggle with when it comes to thinking about what we're describing here, which is essentially some aspect of demographic information, field information related to a contact in particular, is that instead of being additive... So in a lot of lead scoring systems, this exact same rule would simply add 10 points to their HubSpot score, and that 10 points would exist until the end of time, until you manually made some alteration to their lead score, whether they got more points through other rules, whether they had points taken away through negative attributes. Maybe there's some kind of manual operation that you would run to be able to alter that score over time.

But these lead scoring rules do not work and do not fundamentally have the same behavior that you would expect and workflows in HubSpot. So if you do a lot of work in workflows, workflows are essentially a small program that's running most of the time, typically once. They're sequential. So if somebody starts at the top, they're doing a series of actions and then they're ultimately computing on... Spitting out the other end with whatever result they have. In fact, most HubSpot workflows by default won't let contacts re-enroll unless you allow them the option of doing so. So this is a common problem for people that are saying, "Wait, this contact said they submitted this form and the workflow is not working. I'm not sure why that's working." And it's usually because of that reenrollment rule and is designed to prevent people from getting unnecessary emails or for executing the same actions which may produce kind of a weird interaction, especially if your triggering out email to a contact.

So most of the time when you run HubSpot rules, they run and then they're done. They're not looping around unless you specifically designed them in that way. The difference is that you think that lead scoring work in the same way, that once the 10 points are added here for this particular job title, they would exist in perpetuity. That's not the way it works. It's not the way it works at all. What happens is that as soon as a contact no longer meets the criteria for getting this 10 points... So let's say we had somebody who worked in operations and we had that in the lead score and HubSpot saw that they had a job title and then had operations in there. It assigned them the 10 points. Let's say a month later, they come back to the site, they fill out a guide, and they update their job title. They switched companies, they got a promotion, whatever else like that.

Hubspot’s clearly documents how bizarre their lead scoring system is.

Hubspot’s clearly documents how bizarre their lead scoring system is.

HubSpot actually takes those 10 points away, which is really strange. It's not the way that most lead scored systems work is that typically those 10 points would just be added because they met the criteria once and they're done. But instead, one thing to keep in mind with HubSpot lead scoring... With HubSpot score rules, excuse me, is that they continually kind of run a check for those conditions. So it's only for when you meet all of the positive attributes or negative attributes that you're going to get the score computed as of once, but it's not very... It's a little bit odd because it's the opposite behavior for most HubSpot workflows. So something to keep in mind is that even if you tried to do... And I've tried to do this in the past is, which is how I found that out.

5. Increment Lead Scoring Based on Engagement

So, one of the things that we'll talk about is iteration and increment lead scoring based on engagement. So based on if we want to add the a point for every time that HubSpot sees that someone's opened a marketing email. That's not possible in HubSpot, and I thought at a certain point it could be hacked together, which was... There's examples of people creating workflows to set a value in a form, adding a delay in a workflow, and then clearing the value out, thinking that, "Well, okay, that will effectively work in same way that you have lead scoring here those 10 points," but that's not the way it works because as soon as you clear out that value... So if we had a workflow that cleared out this value for their job title after they said it, HubSpot actually subtract those points because it no longer meets the criteria. So it's something that I think is a little bit strange and a lot of people complain about that, and I think that it's kind of justified and kind of goofy, but it is what it is.

So again, HubSpot's great when it comes to situations like this. Got something in a field, does this person have these particular values in a field? If so, adds or subtract points. Super simple stuff. Doesn't speak to anything about how that data got there. It's totally fine whether it came through an API or an integration or something else like that. So the other situation, I kind of covered this a little bit more in the blog post attached to this, is really thinking about engagement. So one of the challenges that exist in HubSpot, again in comparison to something like... I think ActiveCampaign is a good example, to where they have specific lead scoring abilities that relate to engagement. And when I say engagement, what we're looking for is that typically lead scoring kind of falls into these kind of two big camps.

Using lead scoring for Hubspot is, as of now, a mixed bag.

Using lead scoring for HubSpot is, as of now, a mixed bag.

You've got the idea of personas or attributes about the person. Their job title, their age, the budget they have for a project, their location, the countries they operate in, the type of services they're looking for. Attributes that are intrinsic to who they are, a lot of times based on a form submission or some other operation to be able to gather data. HubSpot's pretty good at that. Where HubSpot falls short is really being able to represent engagement. So there's the idea that you may have the perfect lead, they have the perfect job title, they have tons of money, they are ready to make a purchasing decision. Maybe ask them in the form field, "How soon are you looking to start your project or complete your project," or whatever else like that.

So you have that situation, they meet all the criteria. But then they may not be particularly engaged with your brand, which is what the engagement portion is designed to measure, to be able to say how many emails are they opening? How often are they visiting the site? Are they visiting a demo page or a pricing page or a sales page, but we're not seeing the corresponding form submission for that? Or maybe they submitted on a guide or some kind of piece of inbound content previously, and we have that data and we know they're in the system, but they never submitted anything in terms of scheduling a call or contacting sales or going through our self-checkout or the self-service portal or whatever else like that, or a store or e-commerce shop, whatever. So HubSpot's really terrible at that part.

6. Adding Additional Rules

I want to give an example of this. So if we go if we go to positive attributes, let's say that we want to... Again, going back to the example of something simple, let's say that we wanted to add a lead score, or add points for every time that somebody opens an email. So what HubSpot gives you is the option to add a point to individual emails, which is like trying to dig your way out of a hole with the tiniest little bucket of sand. Instead of being able to say, if any email is open, then add a point, what you get in HubSpot is really just being able to say one individual email. So if you're an organization that frequently sends out emails, you would literally have to make a rule that would create the conditions in which they would get that.

That may be really relevant for some organizations. Maybe there's a particularly critical email that does particularly well that's done on a quarterly basis where it becomes this idea of cornerstone content that exists out there and is so critical that if people open it that you want to do lead scoring, but that's not even this. It's not even a class of email or a category of email, because what you have to do is, let's say that you do have that important email, every time you send it, you essentially have to make that rule, which is so granular, that it becomes useless in terms of relevancy is my big argument for most organizations. So for this particular email, we're putting our criteria is that the contact's opened the email, and then we can 12 points or whatever else like that. And we're going to hit save. Again, always, please, please click save. Save you a lot of heartache.

We can add points to there and we can add additional rules. We can go in and add additional rules to all of these marketing emails. But something to keep in mind is that you will run... So we're going to click... So in this case, if they opened either one of these emails that were probably sent out at a fixed period of time, so this may have been sent out last year. It's just that email, it's just that instance of email.

7. Consider the limits on HubSpot’s Lead Scoring Systems, So Use Rules Effectively By Using Regular Increments

Now one thing to keep in mind is that most HubSpot accounts are limited to 100 rules for these lead scoring systems. It's different in the context of which we could say, "Hey, we want to do some type of iteration on being able to say every time that somebody submits... Clicks on a particular email, we want to assign them a lead score overall and just say any email, it doesn't matter."

That's not what this is. So those 100 rules really get restrictive when you think about if you have to go in and make particular rules for each individual email. So I'm not the biggest fan of doing that, and I don't often use it in a lot of the organizations that I manage and things like that. So the other situations... That's a very, very terrible way to do engagement measurement, things like that. The only other method that we have beyond this, is again, to go back to the fields. So there are some default fields related to contacts that are built right into the core of HubSpot. So what we can do is look at contact properties, and then just as an example... There's a few different ones... So if we look for marketing and then we go down to... We can actually see that each... As a default property actually HubSpot does record the number of marketing emails opened, which I think is closer. It's not perfect for a reason I'll go over in a second, but it's definitely closer to what we're after in terms of being able to increment lead scores over time.

Rarely am I using equal to on these. You're essentially treating this like a number because it is. Is greater than or equal to, and then we're going to say five, which is... This is very classic HubSpot example of how to be able to do that. And the idea is that we are setting up regular increments and checks, and I'm just making up a lead score. Don't pay attention to these. We're saying, "Hey, when the the number of marketing email opens is greater than or equal to five, then give them 10 points." So it gets us a little bit closer. There's nothing special about the number five or the lead score values I have here, it's just really showing an example of how to be able to use this field. But you can probably see the obvious problem in this is that it's great for assigning attributes when somebody opens more than five marketing emails, but guess what, after five emails, it's not going to do anything else. So again, we have to make another rule to be able to make this work

Creating regular interval based on field values is an easy way to workaround Hubspot’s limitations.

Creating regular interval based on field values is an easy way to workaround Hubspot’s limitations.

So again, we're going to go to add a new set, and then we're going to go to contact properties, and then we're going to again search for marketing, and then we're going to go to marketing emails opened. In this case we're going to say is greater than or equal to 10, and we're going to go apply filter, and then we're going to give them, let's say, just another arbitrary 10 points. So in this case, once the marketing emails for the contact record greater than or equal to five, they're going to get 10 points. And now there'll be some amount of email that they'll open in between five and 10. Those essentially aren't... They're counted, but they're not getting individual points for each email. The next check happens when there's 10.

So you can see that as you want this to be... If you want this to be more incremental, you could literally set up rules for saying... We could literally go in and say, if marketing emails is greater than one, update filter. If marketing emails opened is greater than two... You could literally set up rules for each individual quantity that you want to have, but of course the problem is those 100 rules. You're going to run out of them. So the easiest way to do this is to try to set up regular increments where you're at least checking in on those particular contacts.

And again, that's not a perfect system. There will be people that will kind of fit in between that gray area and people that might be stuck at nine emails who aren't getting the next point, some people stuck at four emails that aren't getting the next points. And you don't have to stick with the fives. You can do twos or threes or whatever, 10 or 20. It really depends on the volume of email that you send, and really the attributes of what is most relevant to your contacts and things like that.

8. Evaluate Importance of Engagement Metrics

The other big factor, and I discussed this a little bit and give a link to, I think, a pretty relevant discussion in the HubSpot community, which is the idea of how relevant these engagement metrics are. So one of the things that HubSpot is... It's an inherent flaw, even in the example that I give here with the marketing emails that are opened versus the the number of emails not opened, so on and so forth, is that it's really not paying attention to time. So here we don't have the ability to be able to refine by a particular time period. So in other words, what eventually happens is that with this rule... Let's go back to our fives and five here for checks.

Actually, this is supposed to be 10. So let's say that we have a contact from summer that opened five marketing emails back in June, and then we have a contact from this fall that opened five emails as well. Those people would end up with the same lead score. So the idea of discounting time is, I think, a particularly relevant topic because the engagement stuff, opening emails six months ago likely is not relevant as somebody opening up six emails this week, which that would be a lot of emails to open.

But I think the point is saying that HubSpot really doesn't have a mechanism for the idea of time decay or the idea of discounting time or discounting lead scoring points the older they become. So everybody just kind of exist with these lead points in perpetuity, so it becomes really hard to discern noise from just... You see the number of points that are go up. Somebody may have a really high lead score, but they may have a really high lead score because they opened a bunch of emails and then they went out of business six months ago. So being able to kind of suss those things out is really something to keep in mind with engagement.

And because a combination of that we don't really have a way to truly increment, and we don't have a way to decay those scores based on engagement. So ActiveCampaign has some specific features that allow it points to fall off because you do want points to be relevant to the time period that you're looking at them in, versus just hanging out old, dusty leads or contacts that opened a bunch of emails two years ago, aren't going to be as relevant, but haven't visited the website since, are going to have the same lead score as leads today.

Conclusion— Find which Lead Scoring Workflow Works For You

So really being able to try to account for that in your lead scoring model is, I think, something hugely important because along with your demographic information to where we know these are the ideal contacts versus the number of engagement attributes associated with a particular contact, really being able to balance those out. I think it's a tough challenge to do. But I think it's worthwhile to have some system of lead scoring, especially if you're using HubSpot by itself and really being able to suss out who's relevant and who is not, and then take it from there.

Feel free to subscribe, or to let me know if you have any questions about lead scoring. I think it's worthwhile. I think that HubSpot's particularly bad at a lot of lead scoring in comparison to other either eCRMs or sales systems or marketing automation options that exist out there. There's a lot of discussion about this, and I think that you'll likely and hopefully continue to see HubSpot iterate on these values, but it does get you 70% of the way there. And I think more importantly it gives some visibility to... It gives some color to taking life cycle stages, and I'm a big advocate of... If you're not using life cycle stages, especially in HubSpot, you're not doing it right.

So using those lifecycle stages in combination of lead scoring gets you closer to find out really what you want to know, which is who you should be engaging with and who you should be approaching, especially in the context of not seeing direct ask and not seeing form submissions that should happen for a particular group. So in that sense I still think it's worthwhile. I'm still not happy with some of the limitations of it, and I think that we should all try to have better clarity about who our actual lead scoring targets are and things like that. So, thanks guys. Let me know if you have any questions.


Hacking HubSpot’s Lead Scoring System


Marketing Automation Strategies for Small Businesses