Open a HubSpot contact or deal and every block you see, the About panel, the activity feed, the associated companies, the deal stage tracker, is a card. HubSpot builds the whole record out of them, and the ones you show, hide, and reorder decide what a rep notices first when they open a record mid-call.
"HubSpot custom cards" gets used two ways, and the difference matters. Sometimes it means customizing the layout of HubSpot's own cards. Sometimes it means adding a brand-new card that shows data HubSpot does not store, like notes from Notion. This guide covers both, then shows the fastest way to get a genuinely custom card onto every record.
In this article
1.
2.
3.
4.
5.
6.
7.
8.
What are HubSpot custom cards?
A card is a self-contained panel on a CRM record. HubSpot assembles the record from them, and an admin decides which appear and where. "Custom" cards fall into two buckets that people constantly mix up.
Customized built-in cards
HubSpot ships a set of card types (properties, associations, data highlights, reports, activity, stage tracker). Customizing the record means choosing which of these appear, ordering them, and optionally showing different cards to different teams or pipelines. No code, admin access only.
App-provided custom cards
Also called CRM cards or UI extensions. These come from a Marketplace app or a developer build, and they render data HubSpot does not natively hold, an external system, a live view, an action button, directly on the record.
Where custom cards appear on a record
A HubSpot record has three columns, and each one is meant for a different kind of card. Knowing the layout is half of using it well.
| Column | What it is for | Typical cards |
|---|---|---|
| Left sidebar | Identity and key fields at a glance | About / properties card, stage tracker |
| Middle column | The working surface reps read and act on | Activity timeline, content cards, most app cards |
| Right sidebar | Related records and integrations | Associations, attachments, related app data |
App-provided cards, including the kind that shows Notion data, usually render in the middle column so they land in the rep's main line of sight rather than getting buried in a sidebar. If you are still deciding which fields even belong on the record, our guide to HubSpot contact properties covers what to surface and what to cut.
Customizing HubSpot's built-in cards
This is the no-code path, and it is where most "how do I customize my HubSpot record" questions actually land. You are not building anything, just arranging what HubSpot already gives you.
- 1
Open record customization
Go to Settings, then Objects, choose Contacts or Deals, and open the Record customization tab. This controls the layout every user sees on that object's records.
- 2
Add and remove cards
Add the built-in card types you want on the middle and right columns, and remove the ones your team never reads. A cluttered record is a record reps stop scanning.
- 3
Reorder for the first ten seconds
Drag the cards so the most decision-relevant context sits at the top. Deal amount, stage, and next step should be visible without scrolling.
- 4
Set conditional cards if you need them
On higher tiers you can show different cards by team or pipeline, so a renewal deal and a new-business deal do not have to share one layout.
What native customization cannot do
Here is the ceiling every team hits. Record customization is powerful for arranging HubSpot data, but it is blind to anything outside HubSpot.
Record customization can rearrange the furniture. It cannot bring in furniture from another house.
Your reps write discovery notes, account plans, and renewal context somewhere, and for a lot of teams that somewhere is Notion. None of it can reach a HubSpot record through the customizer, because HubSpot never had that data to begin with. That is exactly the gap a Notion HubSpot integration is for, and it is why the copy-paste habit refuses to die: there is no native card to hold the outside context.
Native record customization
- No code, admin access only
- Reorder and hide any built-in card
- Conditional layouts by team or pipeline
- Applies to the whole team at once
Where it stops
- Only shows data already inside HubSpot
- Cannot render Notion, docs, or external systems
- No live window into another tool
- Outside context still lives in another tab
How to add a custom card that shows Notion data
When the data lives outside HubSpot, you stop looking in settings and start looking in the Marketplace. An app's custom card is the supported way to render external data on the record, and you do not need a developer to use one.
NoteLinker is that card for Notion. It adds a custom card to your HubSpot contact and deal records that renders your Notion database rows live, right on the record, so the notes your team keeps in Notion sit next to the pipeline HubSpot tracks.
- 1
Install NoteLinker from the HubSpot Marketplace
Find NoteLinker in the HubSpot App Marketplace and install it. It uses standard OAuth, so there is no code, no API key, and no developer build.
- 2
Connect your Notion workspace
Authenticate with Notion and grant access only to the databases that hold your sales notes. Everything else in Notion stays private.
- 3
Name your match property in NoteLinker settings
Tell NoteLinker which Notion property holds the email (for contacts) and which holds the deal name (for deals). That is how the card knows which rows belong on which record.
- 4
Open any contact or deal
The NoteLinker card renders the matching Notion rows inline with the rest of the record. Rows are visible by default, so there is no sync button to press.
The full walkthrough with screenshots lives on the setup page, and if you want to see exactly what the card looks like in place, here is Notion inside a HubSpot record.
Add a Notion card to every HubSpot record
NoteLinker is a custom card that renders your live Notion database rows on the contact and deal record. Install it and your notes show up where reps already work, in minutes.
Built-in cards vs app custom cards
Both are "custom cards," and the right one depends entirely on where your data lives. This is the decision in one place.
Use a Marketplace app's CRM card when the context you need lives outside HubSpot. NoteLinker renders your Notion rows live on the record with no copy-paste and no developer.
Use record customization to reorder and hide HubSpot's own cards when the data is already on the record and you just want it arranged better. No code, admin access only.
Build your own UI extension with HubSpot's developer framework only when nothing off the shelf fits. This is the code path, so budget dev time.
Best practices for custom cards
However you get your cards on the record, a few habits keep the layout working instead of turning into clutter.
Keep your records readable
- Order cards around the decision a rep makes, not around HubSpot's defaults. The next step should be visible without scrolling.
- Remove cards nobody reads. Every unused card pushes the useful one further down.
- Put outside context where the work happens, in the middle column, not buried in a sidebar.
- Prefer a live card over a copied field. A copy goes stale; a live card reads from the source every time the record loads.
That last point is the whole reason a Notion card beats pasting notes into a HubSpot field. A pasted note is a snapshot from the day someone remembered to paste it. A custom card that reads live from Notion is always current, which is the thing teams actually wanted from a Notion to HubSpot sync in the first place. If you are weighing it against building or wiring this yourself, our NoteLinker vs native HubSpot sync comparison lays out the tradeoff.
Custom cards are how HubSpot lets you shape a record around your team instead of the other way around. Arrange the built-in ones for the first ten seconds of every call, and add an app card for the context HubSpot was never going to hold on its own.


