F-03 Owners and key fields
RevOps · A few hours of work · Fixer: Yes
Evidence
Low fill rates on key deals fields DQ-001
- deals (610 records): amount 55% (target 80%, 274 missing); closedate 50% (target 90%, 305 missing); hubspot_owner_id 75% (target 80%, 152 missing)
Cost range $4,110,000–$13,700,000. 274 deals missing amount × client-provided average deal size $15,000–$50,000 = $4,110,000–$13,700,000. This is pipeline value on deals missing amount, not closed-lost revenue. Deals missing amount: 274 (audit count); Average deal size: $15,000–$50,000 (client-provided)
Low fill rates on key tickets fields DQ-001
- tickets (1240 records): hubspot_owner_id 30% (target 80%, 868 missing)
Standard
- Every record has an owner BP-DQ-02 fail
- Deals carry amount, close date, company and contact BP-DQ-03 partial
- Service tickets are owned and moved through a pipeline BP-SP-04 fail
Why it matters Reports, segments, and assignment that depend on these fields are working from a partial picture.
Fix steps
- CRM → the object named above (Contacts, Companies, Deals, or Tickets). If More is in the top bar, open it first. Filter to records missing the field.
- RevOps backfills the missing values, then requires the field on the form or on the pipeline stage that creates the record. Stage requirements are under Settings → Data Management → Objects → Pipelines, on that stage.
Who does this: RevOps.
Owner: RevOps. Effort: A few hours of work. Fixer: Yes.
Related: DQ-001 BP-DQ-02 BP-DQ-03 BP-SP-04 PLAN-02 PLAN-04 PLAN-11
F-04 Forms and lead capture
RevOps · A few hours of work · Fixer: No
Forms1
HubSpot0
Captured0
No lifecycle—
Notify nobody—
HubSpot forms with 0 fields0
Near-duplicate names0
HubSpot forms
No HubSpot forms in this report.
A captured form’s updated date is the form definition date. Submission counts were not assessed, so an older definition date does not show whether the form still receives submissions. See Method.
The form register is in forms.csv, next to this report.
Owner: RevOps. Effort: A few hours of work. Fixer: No.
F-05 Custom properties
RevOps · Under an hour of work · Fixer: Partly
Evidence
Custom properties without descriptions DM-001
- 4 of 8 custom properties (50%) have no description
- By object: contacts: 4/8
Custom properties in HubSpot's default property groups DM-003
- 2 custom properties sit in default groups
- contacts: 2 in contactinformation
Unused custom properties DQ-002
- 5 of 10 checked custom properties have no value on any record (50%)
- contacts: 5 (a, b, c, d, e)
Cost range $9,360–$97,500. Client-provided: 6–15 people × 2–5 hours per week × $75–$125/hour × 52 weeks = $46,800–$487,500 per year of avoidable HubSpot work. This finding is 1 of 5 open time-related findings. An even share, which is not a measured split of hours, is $9,360–$97,500. People doing the work: 6–15 (client-provided); Hours per person per week: 2–5 hours (client-provided); Loaded hourly cost: $75–$125 (client-provided); Open time-related findings: 5 (audit count)
Custom objects in use DM-006
- 1 custom object(s): widgets
Custom objects defined but barely used GAP-02
Has 1 custom object(s) defined
Uses widgets: 2 records
What it means Records on each custom object. Fires when any defined object has fewer than 10 records.
Next step Confirm which process or integration should populate each object. Finish it, or retire the object.
What we measured: Records on each custom object. Fires when any defined object has fewer than 10 records.
Examples: widgets.
Where to check in HubSpot: Custom objects. https://knowledge.hubspot.com/object-settings/create-custom-objects
Improvement plan: PLAN-06.
Custom fields built but never filled GAP-03
Has 10 custom properties checked
Uses 5 have no value on any record (50%)
What it means Custom properties with no value on any record, divided by custom properties checked. Fires when that share is at least 25%.
Next step Archive fields nobody fills. For the ones that matter, add them to forms, record layouts, or the integration that should write them.
What we measured: Custom properties with no value on any record, divided by custom properties checked. Fires when that share is at least 25%.
Examples: a; b; c; d; e.
Where to check in HubSpot: Property settings. https://knowledge.hubspot.com/properties/create-and-edit-properties
Improvement plan: PLAN-07. Question: Q-01, Q-02, Q-03, Q-04, Q-05.
Empty custom properties
| Object | Label | Internal name | Where |
|---|
| contacts | a | a | See F-05 |
| contacts | b | b | See F-05 |
| contacts | c | c | See F-05 |
| contacts | d | d | See F-05 |
| contacts | e | e | See F-05 |
Standard
- Every custom property has a description BP-DM-01 partial
- Custom properties live in named custom groups BP-DM-02 partial
- Custom objects hold real data BP-DM-04 fail
- Unused custom properties are archived BP-DQ-05 fail
Why it matters A custom field with no description gets reused for a second meaning, and the two uses overwrite each other. Custom fields left in HubSpot’s default groups are hard to find, and they sit next to fields the team did not create. Empty custom fields still show up in forms, views, and the property picker, and they count toward the property limit. A custom object with no written owner is easy to break the next time someone edits its properties or associations.
Fix steps
- Settings → Properties. Select the object, open each custom property in the counts above, and open the Documentation tab.
- RevOps writes one line: what the field means, who owns it, and which process writes it.
- Settings → Properties. Select the object and open each custom property in the counts above.
- On the Details tab, RevOps moves the field out of the default group into a group named for the team or the process.
- Settings → Properties. Select the object and open each empty custom property named above.
- RevOps asks the owner whether it is still needed, and archives the ones that are not. Archived properties can be restored for 90 days.
- Data Management → Data Model. If More is in the top bar, open it first. Open each custom object named above.
- RevOps writes the purpose, the owner, and which integration creates the records.
Who does this: RevOps.
Questions
- Q-01 Is the contacts property "a" (a) still needed, or should it be archived?
- Q-02 Is the contacts property "b" (b) still needed, or should it be archived?
- Q-03 Is the contacts property "c" (c) still needed, or should it be archived?
- Q-04 Is the contacts property "d" (d) still needed, or should it be archived?
- Q-05 Is the contacts property "e" (e) still needed, or should it be archived?
Owner: RevOps. Effort: Under an hour of work. Fixer: Partly.
Related: DM-001 DM-003 DQ-002 DM-006 GAP-02 GAP-03 BP-DM-01 BP-DM-02 BP-DM-04 BP-DQ-05 PLAN-06 PLAN-07 PLAN-13 PLAN-14 Q-01 Q-02 Q-03 Q-04 Q-05
F-07 Legacy apps and keys
Super Admin · Under an hour of work · Fixer: No
Evidence
Integrations installed in the review window INT-004
- 2 integration install event(s) in the last 90 days
Standard
- Connected apps are reviewed BP-GOV-07 partial
Why it matters An app installed in the review window needs an owner and a check that its access matches the job.
Fix steps
- Settings → Integrations → Connected Apps. Open each install from the review window. The count is above.
- The Super Admin confirms the app is approved and has an owner. This is a review, not a fail.
Who does this: Super Admin.
Owner: Super Admin. Effort: Under an hour of work. Fixer: No.
Related: INT-004 BP-GOV-07 PLAN-09
F-08 Logins and access
Super Admin · A few hours of work · Fixer: No
Evidence
Too many super admins GOV-003
- 5 of 14 users (35.7%) are super admins. Allowed for 14 users: 2.
No permission sets (roles) in use GOV-002
- 0 permission sets; 9 non-admin user(s) have individually configured permissions
Failed logins in the review window GOV-005
- 35 of 940 login attempts failed in the last 90 days (3.7%)
- Failed logins by country: US: 28, RO: 7
Users with no login in the review window GOV-006
- 3 of 14 users have no login in the last 90 days
- 2 on paid seats
Cost range $9,360–$97,500. Client-provided: 6–15 people × 2–5 hours per week × $75–$125/hour × 52 weeks = $46,800–$487,500 per year of avoidable HubSpot work. This finding is 1 of 5 open time-related findings. An even share, which is not a measured split of hours, is $9,360–$97,500. People doing the work: 6–15 (client-provided); Hours per person per week: 2–5 hours (client-provided); Loaded hourly cost: $75–$125 (client-provided); Open time-related findings: 5 (audit count)
Paid seats with no logins GAP-04
Has 2 user(s) on paid seats
Uses no login in 90 days
What it means Users on a paid hub seat whose id is absent from logins in the last 90 days. Names and email addresses are not listed.
Next step Reassign or remove paid seats from users who are not logging in.
What we measured: Users on a paid hub seat whose id is absent from logins in the last 90 days. Names and email addresses are not listed.
Examples: service-professional; sales-enterprise.
Where to check in HubSpot: Account name, then Account & Billing, then Seats. Login history is in account activity: https://knowledge.hubspot.com/account-management/view-and-export-account-activity-history https://knowledge.hubspot.com/account/manage-your-hubspot-subscription
Improvement plan: PLAN-03.
Super admins
Allowed for 14 users: 2
| Role | Count | Where |
|---|
| Super admin | 5 | See F-08 |
Standard
- Super admins within 2 or 10% of users BP-GOV-01 fail
- Non-admin users get access through permission sets BP-GOV-02 fail
- Idle users are removed and seats reclaimed BP-GOV-05 fail
Why it matters Each extra super admin can export the portal, install apps, and change security. Access set one person at a time is hard to review, and it drifts from the job the person actually does. A run of failed logins is either someone locked out or someone trying passwords that are not theirs. A paid seat with no login in the review window is a cost, and an idle login is an open door.
Fix steps
- Settings → Users & Teams. Compare the super admin count above with the allowance in that same line.
- The Super Admin moves people who do not need full access onto a permission set.
- Settings → Users & Teams → Permission Sets. The count of people without a set is above.
- The Super Admin creates a permission set per job and assigns it to each non-admin user.
- Settings → Account Management → Audit Logs → Login History. Filter to failed logins and read the countries in the counts above.
- The Super Admin reviews the failures with the people who hit them, and requires two-factor authentication or single sign-on under Settings → Account Management → Security.
- Settings → Users & Teams. Match the users in the counts above to a current job.
- The Super Admin deactivates anyone who has left, and reassigns their records first.
Keep super admins to 2 or 10% of users, whichever is higher; give others a permission set. Super admins can export all data, install apps and change security settings.
Who does this: Super Admin.
Owner: Super Admin. Effort: A few hours of work. Fixer: No.
Related: GOV-003 GOV-002 GOV-005 GOV-006 GAP-04 BP-GOV-01 BP-GOV-02 BP-GOV-05 PLAN-01 PLAN-03 PLAN-05
F-09 Workflows
RevOps · More than a day of work · Fixer: No
Evidence
Inactive workflows AUTO-001
- 7 of 24 workflows are off (29.2%)
- Off: "Old webinar follow-up", "Q2 2024 promo", "Lead rotation (test)", "Renewal reminder v1", "Onboarding nurture (copy)", "Newsletter welcome" (+1 more)
Cost range $9,360–$97,500. Client-provided: 6–15 people × 2–5 hours per week × $75–$125/hour × 52 weeks = $46,800–$487,500 per year of avoidable HubSpot work. This finding is 1 of 5 open time-related findings. An even share, which is not a measured split of hours, is $9,360–$97,500. People doing the work: 6–15 (client-provided); Hours per person per week: 2–5 hours (client-provided); Loaded hourly cost: $75–$125 (client-provided); Open time-related findings: 5 (audit count)
Disabled workflows
| Workflow | Where |
|---|
| Old webinar follow-up | See F-09 |
| Q2 2024 promo | See F-09 |
| Lead rotation (test) | See F-09 |
| Renewal reminder v1 | See F-09 |
| Onboarding nurture (copy) | See F-09 |
| Newsletter welcome | See F-09 |
| Trial expiry alert | See F-09 |
Standard
- Workflows that are off are cleaned up BP-AUTO-01 partial
Why it matters Workflows that are off are either a process that stopped or a process someone still expects to run.
Fix steps
- Automation → Workflows. If More is in the top bar, open it first. Filter to Off, or open the Unused tab. The names and counts are above.
- RevOps turns back on the ones that should run, and deletes the rest after saving any logic worth keeping. Deleted workflows can be restored for 90 days.
Who does this: RevOps.
Questions
- Q-06 Should the workflow "Old webinar follow-up" be turned on or deleted?
- Q-07 Should the workflow "Q2 2024 promo" be turned on or deleted?
- Q-08 Should the workflow "Lead rotation (test)" be turned on or deleted?
Owner: RevOps. Effort: More than a day of work. Fixer: No.
Related: AUTO-001 BP-AUTO-01 PLAN-10 Q-06 Q-07 Q-08
F-10 Lists
RevOps · More than a day of work · Fixer: No
Evidence
Stale lists (segments) AUTO-003
- 1 of 4 lists have had no update or membership change in 180+ days
- 1 of those are not used by any workflow, email or other asset
Cost range $9,360–$97,500. Client-provided: 6–15 people × 2–5 hours per week × $75–$125/hour × 52 weeks = $46,800–$487,500 per year of avoidable HubSpot work. This finding is 1 of 5 open time-related findings. An even share, which is not a measured split of hours, is $9,360–$97,500. People doing the work: 6–15 (client-provided); Hours per person per week: 2–5 hours (client-provided); Loaded hourly cost: $75–$125 (client-provided); Open time-related findings: 5 (audit count)
Empty lists AUTO-004
- 1 of 4 lists have 0 members
Cost range $9,360–$97,500. Client-provided: 6–15 people × 2–5 hours per week × $75–$125/hour × 52 weeks = $46,800–$487,500 per year of avoidable HubSpot work. This finding is 1 of 5 open time-related findings. An even share, which is not a measured split of hours, is $9,360–$97,500. People doing the work: 6–15 (client-provided); Hours per person per week: 2–5 hours (client-provided); Loaded hourly cost: $75–$125 (client-provided); Open time-related findings: 5 (audit count)
Lists built but stale or empty GAP-01
Has 4 lists
Uses 1 stale, 1 empty, 2 unreferenced
What it means Stale lists plus empty lists, divided by all lists. Fires when that share is at least 30%.
Next step Delete unreferenced stale or empty lists, and fix filters on active lists that should have members.
What we measured: Stale lists plus empty lists, divided by all lists. Fires when that share is at least 30%.
Where to check in HubSpot: Segments (lists). https://knowledge.hubspot.com/segments/create-active-or-static-lists
Improvement plan: PLAN-12.
Standard
- Lists (segments) are maintained BP-AUTO-03 fail
Why it matters Segments that have not changed, and that nothing uses, make the segment library harder to trust. A segment with no members reaches nobody, including any email that still points at it.
Fix steps
- CRM → Segments. If More is in the top bar, open it first. Sort by last updated. The stale count is above.
- RevOps deletes the ones nothing references and puts the rest in folders by owner.
- CRM → Segments. If More is in the top bar, open it first. Open each empty segment. The count is above.
- RevOps fixes the filters or deletes the segment after checking that no email uses it.
Who does this: RevOps.
Owner: RevOps. Effort: More than a day of work. Fixer: No.
Related: AUTO-003 AUTO-004 GAP-01 BP-AUTO-03 PLAN-12