HubSpot Onboarding Checklist: Items, Acceptance Checks and Sequence
HubSpot onboarding checklist: nine areas from account setup to handover, the acceptance check that proves each item done, and the order the import enforces.
Paul Maxwell, PhD
AUTHOR
GET WEEKLY REVOPS INSIGHTS
No spam. Unsubscribe anytime.
A HubSpot onboarding checklist written as a list of tasks is ticked when each task has been attempted. At the import, the gap between attempted and done can be counted. The file loads and the count of new records matches the spreadsheet, while several hundred of those contacts may carry no owner. Where representatives view only their team's records, those contacts are invisible to every one of them. A workflow that creates a deal for the contact's owner creates it unassigned (create records with workflows). The import reports the loss as an error count in its summary (import errors), below the record count that a task list checks.
This article sets out the checklist in nine areas, each with the acceptance check that proves an item done rather than attempted. It starts from the dependency order the import tool imposes, lists the items by area, and applies the checks to a sample import. A pre-import procedure, the handoff variants, costs, symptoms and boundaries follow.
An acceptance check is a test run in the portal whose result can fail: a count, a comparison or a status read from a named setting. Where possible, someone who did not do the work runs it. A dependency is a setting that must already exist for a later item to succeed. The initial import is the record set loaded to begin work, as distinct from moving a full history out of another CRM, which is covered under HubSpot migration services.
Dependency Order in a HubSpot Onboarding Checklist
HubSpot's account setup guide lists its sections, from securing the account and inviting the team to account defaults and connected apps. It does not state that any section must precede another. The dependencies sit instead in the import error reference, which sorts import errors into two kinds.
Where an owner in the file matches no user, "the affected records were imported, but the Owner field does not contain a value". A dropdown value matching no existing option likewise leaves that property empty on an imported record. Where a deal stage or pipeline value matches nothing in the portal, the import "did not create or update the records". The first kind leaves the record count intact, and only the second kind reduces it.
The finding follows, and it can be checked against that reference: an import that creates the expected number of records can still have failed. The import summary reports both kinds of error, but separately from the record count. Its Summary card counts new and updated records, while the Import errors section gives each error an Error impact, counted either in rows or in property values not imported (import summary). An import is therefore accepted on the value counts, confirmed in the portal as counts of blank owner and option values, and not on a count of records.
The users, property options and pipeline stages the import resolves against are accepted before it runs. The company currency joins them. Set on the Currency tab of Account Defaults, it is the default currency for new deals and the currency of deal amount totals and reports. Changing it after deals exist leaves repair work. In accounts with free tools the Amount on existing deals does not convert, and in accounts with multiple currencies, which need a Starter, Professional or Enterprise subscription, some closed deals need their exchange rate reset to 1 by hand (account currencies).
Integrations, automation and reporting follow the import by choice, not by documented dependency, which the drawing marks with a dashed line. Their checks are easier to read against known record counts.
Checklist Items by Area
Account Defaults and Portal Setup
HubSpot-hosted pages carry the tracking code automatically, so only external sites need it added (tracking code).
- Account name, company information, time zone and company currency entered from the configuration record.
- Each email sending domain connected under Content, Domains & URLs, on the Email Sending tab.
- Accepted when each sending domain reads Authenticated, meaning DKIM, SPF and DMARC are all verified rather than DKIM alone (email authentication).
- Accepted when the browser's network tab, on each external site, shows the file named with the portal's Hub ID returning 200 OK or 304 Not Modified. A site that loads the code through Google Tag Manager does not show it in the page source, so the network tab is the check that holds for both (tracking code check).
Users, Teams and Permissions
An import file may give each owner as a user's name, an email address or the owner property's internal value (import file format). Where two users share a name, the error reference directs an email address instead. View access offers all records, the team's records or the user's own, and an Unassigned checkbox extends team or owner scope to records without an owner (permissions guide).
Teams need a Professional or Enterprise subscription, and nested teams need Enterprise. Outside the Support Multiple Main Teams beta, a user placed on an extra team rather than a main team is left out of team reports, routing rules and workflow rotation actions (teams). Restrictions on single properties are a separate mechanism, covered in HubSpot field-level permissions.
- Every person named in any owner column invited, with the invitation accepted.
- Teams created with each user's main team chosen deliberately, and one permission set per role with the Unassigned decision written down.
- Accepted when every distinct owner value in every file matches an active user in Users & Teams.
- Accepted when one user per role sees exactly the scope written for that role.
On Enterprise a Super Admin can run that last check with Log in as user, a 30-minute session that notifies the user (log in as a user). Below Enterprise the same check needs a test user holding each role's permissions.
Properties and the Data Model
A property's internal name cannot be edited once the property exists (properties). Integrations and the API address a property by that internal name, so a poor one is carried forward rather than corrected. Custom objects need an Enterprise subscription and fix their internal names in the same way (custom objects). For the import, the properties that matter are enumerations: each value in a file must match the label or the internal value of an existing option.
- Each custom property named, typed and grouped before any file is mapped.
- Every value a file carries for an enumeration either added as an option or rewritten to an existing one.
- Accepted when the distinct values of each enumeration column form a subset of that property's option labels and internal values.
Pipelines and Lifecycle Stages
A custom pipeline needs a Starter, Professional or Enterprise subscription. The weighted amount on the board view is each stage's total amount multiplied by the stage probability (pipelines). The default Sales Pipeline arrives with probabilities of 20%, 40%, 60%, 80% and 90% on its five open stages. In a deals file the stage must be a valid stage of the named pipeline, so a stage that exists only in another pipeline fails. Lifecycle stage definitions are settled here too, because default automatic updates move that property forward only (lifecycle stages); see lifecycle stage vs lead status.
- Stages and exit criteria built from the business's process, with a probability and its source recorded for each stage.
- Accepted when every pipeline and stage pair in the deals file matches a stage in that pipeline.
- Accepted when one weighted figure recomputes by hand: a stage holding $200,000 at 40% shows $80,000.
The Initial Import
Imports start from Data Management, Data Integration (import tool). A row updates a record instead of creating one when it carries a unique identifier: Record ID, Email for contacts, Company domain name for companies, or a custom unique property. Where one file repeats a unique value, only one of the rows carrying it is imported (duplicate unique property value). Contacts deduplicate on email and companies on primary and secondary domain (deduplication). Other sources of duplicates are covered in HubSpot duplicate management.
The mapping screen can replace an errored value across a whole column before the import runs. It offers only the values found in the first 1,000 rows, however, and HubSpot notes that a longer file may carry errors left unresolved (fix errors during an import). The comparison of owner and option values against the portal is therefore run on the whole file, outside the import tool.
- Accepted when records created per object equal the rows less repeated identifiers.
- Accepted when, for the owner column and each enumeration column, the count of records where the property is unknown (filter criteria) equals the count of blank cells in the source.
- Accepted when every entry in the Import errors section, and every row of the downloaded error file, carries a recorded explanation.
Integrations and Connected Inboxes
Installing an app needs Super Admin or App Marketplace access permissions, and installed apps are listed under Integrations, Connected Apps (connected apps).
- A register naming each integration, the objects it writes and the properties it maps.
- Each user's own inbox connected, where the business logs email in HubSpot.
- Accepted when Connected Apps lists no app the register omits, and a test record from each source system arrives fully mapped.
Workflow Automation
Workflows need a Professional or Enterprise subscription (workflows). On turning one on, the option to enroll existing records "which meet the trigger criteria as of now" enrols every qualifying record, which after an import means the imported set. Enrollment history shows each record's path through the workflow and is kept for six months (enrollment history).
- The expected path of each workflow written down against a named sample record, and the enroll-existing decision recorded.
- Accepted when the first live enrollments, read in enrollment history, follow the expected paths.
Reporting and Dashboards
Reports are built in the custom report builder, and their design is covered in HubSpot dashboards.
- Accepted when each report total reconciles with a saved view on the same filters, such as open deals in one pipeline against the board view's count.
- Accepted when each dashboard's access matches the configuration record.
Training and Handover
Training runs on the portal's own records against a written procedure per role, with HubSpot Academy as a supplement. A user has to be deactivated before removal, and HubSpot keeps the assets and activities that user created. Records should be reassigned beforehand, and a user named in workflow filter criteria has to be removed from them by hand (remove users).
- Super Admin transferred to a named administrator inside the business, with the implementer's access reduced.
- Accepted when the administrator repeats one check from each other area, without the implementer, and records the same result.
Settings Reference: Where Each Area Is Configured
| Area | Where it is set | Accepted first |
|---|---|---|
| AreaAccount defaults and setup | Where it is setAccount Defaults (General, Currency); Tracking code; Domains & URLs, Email Sending | Accepted firstNothing |
| AreaUsers, teams and permissions | Where it is setUsers & Teams | Accepted firstNothing |
| AreaProperties | Where it is setProperties, by object | Accepted firstNothing |
| AreaPipelines and lifecycle stages | Where it is setData Management, Objects, Deals, Pipelines tab | Accepted firstProperties used as stage requirements |
| AreaInitial import | Where it is setData Management, Data Integration | Accepted firstThe four areas above |
| AreaIntegrations | Where it is setIntegrations, Connected Apps | Accepted firstInitial import |
| AreaWorkflow automation | Where it is setAutomation, Workflows | Accepted firstInitial import |
| AreaReporting and dashboards | Where it is setCustom report builder; dashboards | Accepted firstInitial import and pipelines |
| AreaTraining and handover | Where it is setUsers & Teams | Accepted firstAll eight areas |
Acceptance Checks on a Sample Import
The figures below are sample data, constructed to show the arithmetic; they describe no client. A Sales Hub Professional portal has seven representatives on two teams, each able to view their team's contacts, with Unassigned left unticked.
The contacts file has 6,000 rows, and ninety email addresses appear twice, so 5,910 contacts are created. Its owner column holds ten distinct values, and eight of them match active users. A departed representative's email address sits on 410 rows and a first name alone on 95 more, none of them among the repeated addresses. A dropdown called Lead source detail, filled on every row, has five options, and the file carries two other values on 260 rows outside the repeated addresses. The deals file has 380 rows, and 22 of them sit at Negotiation, a stage the new pipeline lacks.
| Check | Expected from the files | Observed in the portal |
|---|---|---|
| CheckContacts created | Expected from the files5,910 | Observed in the portal5,910 |
| CheckContacts where Contact owner is unknown | Expected from the files0 | Observed in the portal505 |
| CheckContacts where Lead source detail is unknown | Expected from the files0 | Observed in the portal260 |
| CheckDeals created | Expected from the files380 | Observed in the portal358 |
The contact count passes and three checks fail. Owner coverage is 5,405 of 5,910 contacts, or 91.5%, and the 505 ownerless contacts are invisible to all seven representatives. A check of record counts alone catches the 22 missing deals and passes contacts with 765 property values missing. The import summary does report all three errors, as an Error impact of 505 values under Could not find owner, 260 values under Invalid enumeration option and 22 rows under the stage validation error. Only the last of them changes a record count.
Each failure traces to an area whose check had not passed before the import ran: owners to users, the dropdown to properties, deals to pipelines. The repair is a second import of the affected rows, downloaded from the summary, with changes to four sets of values. The 95 first names are rewritten as email addresses, the departed representative's 410 contacts go to an active user, the two values are added as options, and Negotiation is mapped to an existing stage. Email matches the corrected contact rows to the existing records, so those rows update rather than duplicate.
The Pre-Import Verification Procedure
- Freeze the source files, so that the values checked are the values imported.
- Compare the distinct values of every owner column with the active users in Users & Teams, and rewrite each owner as an email address.
- Compare the distinct values of every enumeration column, across the whole file rather than the first 1,000 rows, with the property's option labels and internal values, and resolve each unmatched value.
- Confirm that each stage in the deals file belongs to the pipeline named beside it, and that the company currency is set.
- Count the rows per object, subtract the repeated unique identifiers, and write down the expected record count.
- Run the import, read the Error impact of each entry in the Import errors section, and download the rows with errors as a file.
- Verify: records created equal the expected count for each object; a saved view filtered on each owner and enumeration property being unknown returns the number of blank source cells; and every row in the error file has a recorded explanation.
Agency, Client and Customer Handoff Checklists
The agency and client variants divide the same nine areas between two parties, while the customer handoff variant is a checklist the portal runs itself.
The agency onboarding checklist. An agency works inside a portal the client owns, so a client employee holds Super Admin from the first day. Agency staff are invited with only the permissions the work requires. At handover each agency user's records and assets are reassigned before deactivation, and workflows whose filter criteria name an agency user are edited by hand. The checks and their order stay fixed across clients; the values come from each client's configuration record.
The client onboarding checklist. The client supplies a named portal administrator, a user list with roles and main teams, files with owners as email addresses, the agreed dropdown options and stage definitions. The client then signs a written acceptance of each area's check. Who owns each decision is set out in the HubSpot onboarding process.
The customer onboarding handoff checklist. This variant moves a newly won customer from sales to onboarding inside HubSpot. A workflow triggered when a deal reaches Closed won can create a ticket in an onboarding pipeline with the Create record action. For tickets, that action requires Service Hub Professional or Enterprise. The ticket is associated with the enrolled deal by default, and can be assigned to the deal's owner or a named user (create records with workflows). It is accepted when a test deal moved to Closed won produces an owned ticket in that pipeline, associated with the deal.
Costs and Returns of Acceptance Checks
What the checks buy is a defect found while it is still a column in a file. Before anyone works the records, the repair is one corrected file. After go-live the blanks have consequences of their own. A workflow that creates a deal for the contact's owner creates it unassigned, and turning on a workflow with existing records enrolled acts on the imported set as it stands (workflows). A corrective import then has to spare the owners that representatives have assigned by hand since. Its Prevent property overwrite option does that by updating a property only on records where the property has never held a value (import tool).
What they cost is time from a person who did not do the configuration, and a written configuration record to check against. Below Enterprise each role also needs a test user, since Log in as user is an Enterprise feature. The checks also delay the day users first see their data.
The case is strongest where several files feed one object, access is scoped to teams or owners, and integrations write into the objects the import loaded. Each multiplies the places a blank value can sit unseen. It is weakest on a small portal where every user can view all records, since an ownerless record then stays visible to everyone. There, a record count and the error file suffice.
The firm publishing this checklist sells HubSpot onboarding services as a HubSpot Solutions Partner, an interest stated here once. A business with an administrator who has capacity and a process close to HubSpot's defaults can run it alone, alongside HubSpot's own onboarding.
Symptoms After Go-Live and Their Causes
Representatives who cannot see contacts their manager can see are missing records imported against unmatched owner values. Those records have no owner, so team-scoped access excludes them; a re-import giving each an active user's email address as owner fixes it.
A weighted pipeline figure unrelated to the business's close rates comes from stage probabilities left at the defaults. The board view multiplies each stage's amount by them, so each is reset from the business's own history.
Contacts imported at a later lifecycle stage than their true one cannot be moved back by a second import or a workflow, because HubSpot tools move the property forward only. The value has to be cleared, by hand or by a workflow, before the earlier stage is set.
A representative who never receives rotated records holds that team as an extra team rather than a main team. Workflow rotation actions leave extra team members out, so the fix is a change of main team.
Boundaries and the Limit of the Evidence
The checklist covers the first configuration of a newly purchased portal. It excludes migration of history, hub-specific settings beyond those named, custom object design, and the process decisions discovery settles first. Setting names, navigation paths, tier gates and import behaviour are as documented in September 2026. HubSpot moves settings between menus, so its knowledge base governs wherever it and this text differ.
The evidence has two limits. The checks prove that the portal matches its configuration record, but not that the record matches how the business works, which only a review of live usage can test. The sample import was constructed rather than observed, so it shows the arithmetic of the checks and nothing about how frequently mismatches occur in real imports. No published measurement of that frequency is known to this article.
Frequently Asked Questions
What goes on a typical HubSpot onboarding checklist? Nine areas, from account defaults through users, properties, pipelines and the import to integrations, automation, reporting and handover. An item is done when its acceptance check passes, and the first four areas pass before the import runs.
Is there a HubSpot agency onboarding checklist template? The reusable part of a HubSpot agency onboarding checklist template is the set of acceptance checks and their order. The values each check compares come from the client's own configuration record.
What belongs on a HubSpot client onboarding checklist? The client's inputs and sign-offs: an administrator, users with roles and main teams, files with owners as email addresses, dropdown options, stage definitions, and written acceptance of each area.
What is a HubSpot customer onboarding handoff checklist? It is the checklist for moving a newly won customer from sales to onboarding inside HubSpot, and it is also called a HubSpot sales to onboarding handoff checklist. It covers a workflow creating an owned onboarding ticket at Closed won, and a test deal proving that the workflow runs.
In Summary
A HubSpot onboarding checklist is complete when every acceptance check has passed, and the import decides their order. An unmatched owner or option loads the record with a blank value, while an unmatched stage drops the row. Users, property options, pipelines and the company currency are therefore accepted first, and the import is accepted on blank-value counts rather than on its record count. The number that settles it is not on the Summary card. It is the count of contacts whose owner is unknown, read in the portal, matched to the owner column's Error impact, and recorded before the first representative logs in.