++ Intelligence Brief and Intelligence Stream Field Definitions

HubSpot, Salesforce, Pipedrive and Slack use a default, pre-built integration, so there is no field mapping required there. If you are connecting through the Zapier App, Zapier Webhook or a Standard Webhook, you can map the following Bread & Butter data points directly to your own fields.

In short: this article lists every field available in the Intelligence Brief and Intelligence Stream. HubSpot, Salesforce, Pipedrive and Slack use a default, pre-built integration, so no field mapping is needed there; field mapping only applies when you are connecting through the Zapier App, Zapier Webhook or a Standard Webhook. The Brief carries identity, firmographic, attribution and written sales-context fields plus the latest Nurture draft, all at the top level of the payload. The Stream carries everything in the Brief plus the full raw material behind it: engagement detail, top pages, complete session-by-session history and the full Nurture draft history. Jump to a section below, or read on for details on when each field populates.

Two columns below tell you where each field is available. The Intelligence Brief carries the summary; the Intelligence Stream carries the summary plus all the raw material behind it. The Stream is a strict superset of the Brief: every Brief field appears in the Stream under the same name. The Stream is available only through Zapier and Webhooks, because the payload is larger than standard CRM field mapping can absorb.

Field names below are given exactly as they appear in the payload. Timestamps are ISO 8601 with three fractional digits and a trailing Z, for example 2026-09-18T14:32:07.412Z . A value that is absent arrives as null , never as an empty string, so your field mappings never break.

Session

Field Type Brief Stream Description
session_date ISO 8601 The exact date and time the visitor's session closed and the payload was generated

User Profile (user )

These fields capture the lead's core identity, professional background and current intent level.

Field Type Brief Stream Description
created_date ISO 8601 The date the lead record was first created in Bread & Butter
email_address string The primary email address associated with the lead
first_name string The lead's first name
last_name string The lead's last name
profile_url url A direct link to the lead's profile in Bread & Butter
role string Current job title or professional designation
profile_summary text An AI-generated summary of professional background and career trajectory
linkedin_url url A direct link to the lead's LinkedIn profile
lead_stage string The current Lead Stage, as labelled in your dashboard
lead_stage_rank number
The stage's position in the 10-slot funnel (1 to 10), stable even if the label is customised
focused_score number The 1 to 10 intent score. An integer, rounded down; null  if the lead has not been scored yet
previous_focused_score number The score before the most recent recalculation, so you can see which way it moved. null  until the score has changed at least once
engagement_score number The engagement score from the lead's most recent session
top_user_engagement_score number
The highest single-page engagement score the lead has ever recorded
average_user_engagement_score number
Average engagement score across every scored page view
total_engaged_pages number
Count of page views that received an engagement score
profile_highlights array
Scannable bullets on career history, education and shared connections

Company (company )

These fields deliver deep firmographic enrichment based on the lead's employer.

Field Type Brief Stream Description
name string The official name of the company
website url The primary website URL
summary text A brief, scannable summary of what the company does
industry string The primary market sector (e.g. Software, Manufacturing)
number_of_employees number Total employee headcount as a number. null  when the figure was found only as a range
number_of_employees_text string Headcount exactly as it was found, including ranges such as "11-50"
year_founded number The year the company was established
phone_number string The primary corporate phone number
address string The headquarters or primary address
linkedin_url url The company's official LinkedIn page
overview text
A deeper look at the business model and market position
history text
Key milestones and historical context
products_services text
Core offerings, products or services sold
highlights array
Scannable bullets on funding, growth, acquisitions and partnerships
employees_list array
Notable employee profiles with names and roles
social_accounts array
Active social media profiles
latest_news array
Recent press releases and news mentions with dates and links
specialties array
Niche focuses and keywords associated with the company's expertise
linkedin_followers number
Total followers on the company's LinkedIn page
locations array
Additional offices and geographic operating regions

First Attribution (first_attribution )

These fields capture the origin data from the lead's very first visit to your website.

Field Type Brief Stream Description
country  / country_code string Country name and two-letter code (e.g. US, CA)
state_prov  / state_prov_code string State or province name and abbreviated code (e.g. NY, BC)
city string The city the lead was in during their first visit
device string Hardware type (e.g. Desktop, Mobile)
referrer url The website that originally referred them to your site
utm_source string The original source of traffic (e.g. google, newsletter)
utm_medium string The original marketing medium (e.g. cpc, email)
utm_campaign string The campaign name that drove the first visit
utm_term string The search term used, if from paid search
utm_content string The specific content piece or ad variation clicked
gclid string Google click identifier, for Google Ads tracking
gclsrc string Google click source (e.g. aw)
dclid string DoubleClick click identifier
fbclid string Facebook click identifier
mkcid string Mailchimp click identifier
ip_address string
The IP address during their first visit
latitude  / longitude number
Approximate geographic coordinates
continent  / continent_code string
Continent name and two-letter code (e.g. NA, EU)
isp string
The Internet Service Provider used
operating_system string
Device OS (e.g. Windows 11, macOS)
browser string
Web browser and version (e.g. Chrome 125)

Click identifiers are passed through exactly as they arrived in the URL, capitalisation included, so a value you receive can be matched against your ad platform without transformation.

Last Attribution (last_attribution )

These fields capture data from the lead's most recent session, the visit that just closed. It includes the exact same location, device and UTM fields as first_attribution , letting you see what specifically brought a returning lead back to your site today.

Written Sales Context

Six AI-generated fields designed for immediate outreach, written to be scanned in about ten seconds. They sit at the top level of the payload alongside user  and company ; there is no wrapper object around them.

Field Type Brief Stream Description
latest_session_summary text A single sentence on what they did during their most recent visit
user_journey_summary text A full paragraph covering every session, including how their intent has shifted over time
attribution_summary text How they originally found you, and what keeps bringing them back
real_time_icebreaker text A hyper-local, time-sensitive reference based on the lead's geography, to help reps build rapport
live_talking_point text Up-to-the-minute personal context: recent promotions, career milestones, shared connections
compelling_sales_trigger text Company intelligence flagging newly won awards, product launches, acquisitions or press mentions

Nurture (nurture_draft , nurture_sent , nurture_drafts )

Nurture AI generates a draft email each time a lead returns. The Brief carries the current draft and every email actually sent; the Stream adds the full history of every draft ever generated.

Field Type Brief Stream Description
nurture_draft.generated_date ISO 8601 When the current draft was generated
nurture_draft.status string draft , sent , not_sent  or dismissed
nurture_draft.angle string The approach the draft takes
nurture_draft.subject string Suggested subject line
nurture_draft.body text Plain-text version of the draft
nurture_draft.body_html html HTML version, with simple markup for links
nurture_sent[] array Every email actually sent to this lead: subject, body, angle, generated and sent dates
nurture_drafts[] array
Every draft ever generated for this lead, sent or not, with status

Top Engaged Pages (top_engaged_pages )

Stream only. The pages that have held this lead's attention most across all sessions, as structured data, ordered by total engagement score with the highest first. It sits at the top level of the payload beside sessions . The Brief describes the same thing in prose through user_journey_summary  and latest_session_summary .

Field Type Description
top_engaged_pages[].title string The page title
top_engaged_pages[].no_query_url url The page URL with query parameters stripped
top_engaged_pages[].visits number How many times the lead has viewed that page
top_engaged_pages[].total_engagement_score number Sum of engagement scores across those visits
top_engaged_pages[].average_engagement_score number Average engagement score per visit
top_engaged_pages[].top_engagement_score number The highest single-visit engagement score

Session History (sessions )

Stream only. An array containing every session the lead has ever had on your site, not just the most recent one. This is the raw material behind the summaries above, and it is what makes the Stream suited to data warehouses and BI tools rather than CRM fields.

Field Type Description
sessions[].session_date ISO 8601 When that session occurred
sessions[].entry_page url The first page of that session
sessions[].exit_page url The last page of that session
sessions[].duration number Session length in seconds, from first to last recorded event
sessions[].focused_score number The score for that specific session
sessions[].pages[].url url Each page visited
sessions[].pages[].title string That page's title
sessions[].pages[].engagement_score number Engagement score for that page
sessions[].pages[].time_on_page number Seconds spent on that page. null  on the exit page, since there is no following event to measure against
sessions[].events[] array Events triggered during that session, with timestamps
sessions[].exit_destinations[] array Outbound links clicked during that session, each with a url and a timestamp
sessions[].attribution object Full attribution for that individual visit, same fields as first_attribution
session_count number Total number of sessions on record for the lead
sessions_truncated boolean true  if the history was cut short to keep the payload deliverable (see below)

Sessions are ordered newest first. There is no cap on the number of sessions, but if a lead's history would push the payload past roughly 5 MB, older sessions are dropped, sessions_truncated  is set to true  and session_count  still reports the real total. In practice this only happens to bot traffic; a real lead's entire history is a few tens of kilobytes.

Event types

sessions[].events[]  is a closed list. Every entry carries a type and a timestamp, and your own events also carry the name you gave them in name .

Type What it means
authentication The lead returned through a Bread & Butter gate using an account they already had
identity_conversion The lead gave an email address for the first time and became a named contact
verified_conversion The email address passed Real-Time Email Verification
form_submission A form on your site was completed
contact_us A contact form or contact CTA was completed
opt_in Marketing consent was given
opt_out Marketing consent was withdrawn
cookie_consent A choice was recorded in the Privacy Manager
custom_data_updated Your site attached or changed custom data on the lead's profile
custom One of your own events. The name you gave it arrives in name

Page views and outbound clicks are not events. Pages live in sessions[].pages[]  and outbound clicks in sessions[].exit_destinations[] , so you never have to filter them back out of the event array.

Exit destinations

sessions[].exit_destinations[]  records the outbound links the lead clicked during that session, which is often where the real intent shows: a booking tool, a review site, a comparison page. Each entry carries a url  and a timestamp , and nothing else.

When a session contained no outbound click the field is null  rather than an empty array. That is the normal value for most sessions rather than a sign of anything missing. Exit destinations are Stream only; the Brief carries no exit destination field.

When Fields Are Populated

Not every field arrives on every payload.

UTM fields and click identifiers are always present in every attribution object. They are null  when a lead arrives directly or through organic search, since there is no campaign to report, so your field mappings never break.

Enrichment fields under user  and company  populate once enrichment has run against that lead. Newly captured leads may arrive before enrichment completes.

focused_score  is null  until the lead has been scored, so you can tell "scored zero" apart from "not scored yet". previous_focused_score  is null  until the score has moved at least once.

number_of_employees  is null  when the figure was found only as a range, and number_of_employees_text  carries the range instead, so a warehouse can filter on the number and a CRM field can display the text.

real_time_icebreaker  requires a resolvable location. Leads on VPNs or corporate proxies may not receive one.

last_attribution  matches first_attribution  exactly on a lead's first session, since it is the same visit.

lead_stage  carries the stage's current label as shown in your dashboard, so a renamed stage changes the value that arrives. Warehouses should join on lead_stage_rank  in the Stream instead.

nurture_draft  is absent until Nurture AI has generated a draft for the lead.

Every field is Bread & Butter's own. Nothing in either payload passes through a third-party data vendor's raw response or field names, so what you map today stays stable if a source changes behind the scenes.

Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.