Start with your forms. HubSpot forms set contacts as marketing by default, and the setting also converts existing non-marketing contacts who submit. Non-HubSpot forms captured from your website do the same through an account-wide setting that is on by default. So a contact form or support form that customers use can keep adding to your billable count without anyone deciding it should.
To see what set a contact's status, open the record and look at two properties. Marketing contact status source type shows the tool that set the latest value, such as a workflow. Marketing contact status source name shows the ID of the user, activity or tool behind it. Add both as columns to a contacts view filtered to marketing contacts and you can see which tools are doing it (marketing contacts properties).
Where unexpected marketing contacts come from
HubSpot forms
In the form editor's settings, Set new contacts as marketing contacts is switched on by default. With it on, anyone who submits becomes a marketing contact, including people who were non-marketing before. It's set per form, so check each one. Turn it off on forms that customers or support users fill in, and keep it on where people are signing up for your marketing (default marketing statuses).
Non-HubSpot forms
If HubSpot captures forms that weren't built in HubSpot, the account-wide setting Set new contacts created through non-HubSpot forms as marketing contacts is on by default. You'll find it on the Non-HubSpot Forms tab of your forms settings. It also converts existing non-marketing contacts who submit.
Workflows
The Set marketing contact status action marks every contact that reaches it. Look for it in welcome, onboarding and signup workflows, and check whether the enrollment triggers catch more people than intended. Setting status by workflow needs a Professional or Enterprise subscription as of October 2026 (set contacts as marketing).
Imports
A single-object contact import leaves contacts non-marketing unless someone ticks the option to set them as marketing contacts. Multi-object imports always create non-marketing contacts. If the source type points to an import, find it in your past imports, where each one shows who ran it.
Integrations
Apps that sync contacts create them as non-marketing by default. In your account settings under Integrations, then Marketing Contacts, each connected app has its own toggle. If one is on, every contact that app creates from then on is a marketing contact. Contacts that already existed aren't changed by it (integration marketing settings).
Lead ads
When you connect a Facebook page or a LinkedIn ads account for lead syncing, the lead sync settings include a marketing contact switch. With it on, contacts created from those lead forms are marketing contacts. You'll see it on the lead syncing tab of your ads settings (lead syncing).
Chatflows, merges and people
Chatflows create non-marketing contacts unless that chatflow's Set contacts created as marketing contacts switch is on. When two contacts are merged, the merged record keeps the more marketable status. And any user with the Marketing contacts access permission can tick the marketing box when creating a contact, or set a whole selection as marketing from the index page.
Some sources never start contacts as marketing. Contacts from the HubSpot mobile app, one-to-one email logging, a connected team email, document opens, meetings links and the Chrome, Outlook and Office 365 email extensions begin as non-marketing, and that default can't be changed.
How to fix it
- Find the sources. Filter contacts to Marketing contact status is Marketing contact and sort them by source type. A report broken down by source type works too.
- Change each setting where it starts. Turn off the form switch, the non-HubSpot forms setting, the app toggle or the lead sync switch wherever it doesn't belong, and narrow or remove the workflow action.
- Set the wrong contacts as non-marketing. Use Clean up contacts on the Marketing Contacts page in Account & Billing, or the bulk action on the contacts index page. The change takes effect on your next update date, which the marketing contacts limit article explains.
- Limit who can change status. Turn off Marketing contacts access for users who don't need it (user permissions).
- Set a maximum on the Marketing Contacts page, so imports and automated features can't take you past a number you choose.
How to stop it happening again
Agree on one rule for who should be a marketing contact, ideally tied to consent, and set every form, app and workflow to match it. Each time someone builds a form or connects an app, check its marketing setting before it goes live. A monthly look at the source type breakdown catches anything that slips through.
From client work
At Conference Badge, a welcome workflow was marking every app signup as marketing, and marketing contacts had reached 9,159 on a 7,000 tier. I fixed the workflow and scheduled more than 7,800 signups to non-marketing. For Kingstown College I imported everyone as a non-marketing contact, and marketing status follows the consent field from Full Fabric, where they manage applications. Nobody is emailed without opting in.
If you can't tell which tool is doing it, I can audit your portal and track it down with you.
Questions
Do contacts from my sales team's emails count as marketing contacts?
Not by default. Contacts created by one-to-one email logging, the email extensions and meetings links start as non-marketing, and HubSpot doesn't let you change that default.
Will switching on an integration's marketing toggle change my existing contacts?
No. Only contacts the app creates after the toggle is on become marketing contacts. To change existing ones, set them by hand or with a workflow.
Which contacts should I move to non-marketing first?
HubSpot's Clean up contacts tool shows unsubscribed and bounced contacts by default, so start there. After that, look at customers you only email one-to-one, since one-to-one sales email works for non-marketing contacts.
Did this fix it?
Good to hear. If something else in the portal looks off, the help centre has more fixes.
Some problems need someone to look inside the portal. Book a free 30-minute call and show me what's happening. If it needs work, you get a written scope and one fixed price.