Works with HubSpot
Every registrant in HubSpot, with where they came from and whether they came.
Connect your own HubSpot account and every registrant becomes a HubSpot contact, matched by email, with the event, the way in they came by and whether they came. Send an event's people from its Registrants tab, or turn on automatic sending and each person goes when they register and again when they attend, don't come or cancel. You can also record each event as a HubSpot marketing event, so a contact keeps every event they signed up for, not only the latest.
Try it: write your event in a sentence
What you get
On top of HubSpot
Contacts, matched by email
Each person is upserted by email, 100 at a time, so sending twice updates the contact instead of making a duplicate. Blank fields are left out, so a name already in HubSpot isn't wiped.
The event on the contact
Seven contact properties, all named ptalk_, are added to the Contact information group the first time: the event, its date, the way in, attendance, what they hoped to get, the lens answers and an engagement score.
Each event as a marketing event
Turn it on and each event is created or updated as a HubSpot marketing event, with each contact recorded as registered, attended or cancelled. A contact then keeps every event, not only the last one.
Sent as it happens
With automatic sending on, each new registrant goes within minutes, and goes again when they're marked attended or didn't come, and when they cancel. If HubSpot is down or asks us to slow down, it tries again ten minutes later.
On a list, if you want
Give the ID of a static list and everyone sent is added to it too, ready for a workflow or a follow-up sequence in HubSpot.
Every way in, tracked
A page, a QR code, an email address people register by writing to, share cards and personal invites. Each carries its own code, so every registration says where it came from, UTM tags included.
What goes to HubSpot
| In HubSpot | What it holds |
|---|---|
| Email, first name, last name, company | From the registration. The company is the one the research found, or their work domain. |
| ptalk_event, ptalk_event_date | The latest event sent for them, and the day it started (YYYY-MM-DD). |
| ptalk_way_in | How they registered: the link, QR code, card, invitation or email address they came by. |
| ptalk_attendance | Registered, Waitlisted, Attended, Didn't come or Cancelled. |
| ptalk_hope | What they wrote when they registered. |
| ptalk_lens_answers | Each of your lens questions and what the research found about their company. |
| ptalk_engagement | 0 to 100, from what they did in the live room here: whether they came, minutes in the room, questions, polls, chat. |
| Marketing event (optional) | The event's name, organizer, dates, link and whether it was cancelled; each contact as REGISTERED, ATTENDED or CANCELLED. |
How it works
- 1
Make a key in your HubSpot
A private app token, or on newer accounts a service key (HubSpot stopped new private apps in 2026). Give it crm.objects.contacts.write, crm.schemas.contacts.read and crm.schemas.contacts.write; crm.lists.write for a list; crm.objects.marketing_events.read and .write for marketing events.
- 2
Paste it in Settings → Connections → HubSpot
It's encrypted before it's stored. Add a static list's ID if you want one: it's the number at the end of the list's address.
- 3
Choose when people go
Press Send to HubSpot on an event's Registrants tab, or turn on automatic sending. Under CRM, turn on recording events as marketing events.
- 4
Find them in HubSpot
Filter contacts on Talk: way in or Talk: attendance, or open the marketing event to see who registered and who came.
Good to know
- One way, Talk to HubSpot
- Nothing is read back. A change made to a contact in HubSpot doesn't change the registration here, and HubSpot deals aren't read: the pipeline report is for Salesforce.
- The ptalk_ fields hold the latest event
- Someone who comes to three events shows the third. For the full history, turn on marketing events.
- Automatic sending starts when you turn it on
- People who registered before then aren't sent by themselves. Press Send to HubSpot once for them.
- Didn't come stays registered on the marketing event
- HubSpot's attendance states are registered, attended and cancelled, so someone who didn't come stays registered there. ptalk_attendance says Didn't come.
- HubSpot's private apps
- HubSpot no longer lets accounts create new legacy private apps (from October 26, 2026 for older accounts) and points to service keys. Existing private app tokens keep working. Talk takes a token that starts pat-.
Questions
Will sending twice make duplicate contacts?
No. Contacts are matched by email, so a second send updates the same contact.
Does anything about email opens or clicks go to HubSpot?
No. Programmable Talk doesn't track opens or clicks in its emails. The engagement score comes only from what someone did in the live room here, such as asking a question.
Do I need the marketing events part?
No. Contacts go either way. Turn marketing events on when you want HubSpot to keep every event a contact registered for, which the ptalk_ fields alone can't, since they hold the latest one.
Can I send only the people who came?
Yes. On the Registrants tab you can send everyone, only those who came, or only those who didn't.
Read next