Number of sales activities before deal is created

Hi there,

I’m looking for a way to create a report where we can see the average sales activities on a company it takes to create a deal. To give some background, our sales team does quite some cold outreach (mainly calling, following up by email), the moment a meeting is booked with the lead we create a deal. From that moment there is a good way to track how many sales activities it takes to win the deal, but I’m missing a way to track the number of activities on a company BEFORE a deal is created.

Has anyone had the same issue and found a nice solution for this? Would be highly appreciated!

Hi @RuneD,

Your best option here is the following:

  1. Create custom contact or company property “Number of sales activities before deal creation”
  2. Create a contact or company workflow that enrolls companies which are associated to at least one deal where “Record ID is known” or where “Number of associated deals is 1”
  3. Use “Edit record” to copy the value from “Number of sales activities” into the new property from step 1
  4. Don’t enable enrollment (to only copy once and effectively freeze the value)
  5. Don’t enroll existing records

This would start to populate the information you’re looking for in the new property. Historically, unfortunately, this would no backfill the info.

Best regards

Hi @karstenkoehler,

Thanks for your reply!

That is a good starting point indeed, I have 1 question on that, would you happen to know a way we can do this still with historical data? We had quite a good sales year so we would like to see it from this year, I have been checking for quite some time but it feels like this is a limitation by HubSpot. Ideally I want a report where I can say for example the sum of the activities before the create date of a deal on that company.

Kind regards,

Rune

@RuneD not easily, no.

Theoretically, you could export both the property history for the number of sales activities field and the number of associated contacts: Export property history

Those exports contain the information what the value was before the first deal was created. If you’re able to prepare this data in a way that you can re-import the number into HubSpot into the new property, then you have your historical information :slightly_smiling_face:

@karstenkoehler something worth to take a look at, thanks for the insights!

Greetings @RuneD,

This is a advanced sales analytics question, most teams could be looking for this to understand how much cold outreach or activity it really takes before a deal is created.

You’re Trying to Measure:

  • For each company, how many sales activities (calls, emails, meetings, etc.) occurred before the first deal was created for that company.
  • Then, average that “pre-deal activity count” across all companies where deals are created.

Hubspot stores number of Sales activities in the property: Number of sales activities

Number of sales activities: the total number of sales activities logged for the contact. Sales activities include a call, chat conversation, LinkedIn message, postal mail, meeting, note, sales email, SMS message, task, or WhatsApp message. This is set automatically by HubSpot based on the number of applicable activities on the record. Learn more about logging activities.

More you can find in these document about default properties:

So can you use this property in the report you are looking for, technically no as it won’t give what you are looking for.

So why this is difficult in standard HubSpot Reports?

  • HubSpot logs activities (calls, emails, meetings) on companies and contacts.
  • Deals are associated to companies, but there is no built-in native field that counts activities before a deal’s creation.
  • Default reporting doesn’t allow “conditional” metrics like “count activities on a company that happened before the date of their first deal.”

So what is the possible Solutions or Workarounds

1. Manual or Automated Export + Excel/BI Tool

You can export specially these along with Contact, Company, Deal, Activity, etc:

  • Deals (Create Date)
  • Number of sales activities (Export Property History)

Then Map the Deal Create Date and count of “Number of sales activities” before Deal Create Date. This would require advance excel knowledge to map the data.

Once you have the mapping you’ll have the exact count of activies for each Deals before deal was created.

2. Workflows & Custom Properties

Alternatively you can do with Custom Properties and Workflow, here’s the step would look like:

  • Create a custom company property, like “Pre-Deal Activity Count.”
  • Use workflows to (retroactively and/or ongoing) increment this count each time a new activity logs on a company with no deals yet.
  • When a deal is created, stop updating the property.
  • This method gives an approximate count but isn’t perfect for historic data.

You can even use Number of sales activities, and update the number in the Custom Property when the Deal is created. You can use Number of associated deal as a trigger so whenever the deals gets created it will enter and update the Custom Property or Copy the value from Number of sales activities in Custom property(Pre-Deal Activity Count).

Note: Don’t re-enroll the record in the workflow, as it would not be accurate.

Then this property will be ready to be used in the report.

Hope this helps, if it does then help the community by marking it as a solution.

Happy HubSpotting.

Thanks & Regards,

Dilshad Shaikh


@DilshadShaikh wrote:

  • Use workflows to (retroactively and/or ongoing) increment this count each time a new activity logs on a company with no deals yet.

Giving the benefit of the doubt here and assuming that this is not gen AI hallucination: Can you please elaborate how one would retroactively – correctly – increment a number property?

Greetings @karstenkoehler,

It means on going for each new deals when it will be created.

@DilshadShaikh interesting use of the word “retroactively” :grinning_face_with_smiling_eyes: thank you for your reply.