RB2B
Person-level website visitor identification tool. Identifies individual visitors (not just companies) and exports to CSV for CRM import.
Purpose: Person-level website visitor identification. Identifies individual visitors by name, job title, email (where available), LinkedIn profile, and company â not just the company like most intent tools. Used to build outbound lead lists from inbound traffic.
Last verified: May 2026
Quick Referenceâ
| Feature | Detail |
|---|---|
| Identification | Person-level (name, email, LinkedIn, title) |
| Company data | Company name, industry, size, revenue estimate |
| Engagement data | Pages visited, visit timestamps, referrer, all-time views |
| Export | CSV export (custom report) |
| CRM integration | Via CSV â Python import pipeline into TwentyCRM |
| Cost | Free tier available; paid plans for higher volume |
| Access | Client-specific accounts â no central Pacing login |
Overviewâ
RB2B tracks website visitors and de-anonymises them at person level using LinkedIn and partner identity graphs. Unlike company-level tools (Clearbit, Leadfeeder), it returns individual people â useful for direct outreach without needing a separate prospecting step.
The export contains two profile types in a single CSV:
- Person rows â individual visitor with name, job title, email, LinkedIn URL, and the company they work at
- Company rows â identified company with LinkedIn company URL, industry, size, revenue estimate, but no individual contact
Both types include engagement data: pages visited, view counts, first/last seen timestamps, referrer, and RB2B tags (e.g. "Hot page").
Data Fieldsâ
| CSV Column | Type | Description |
|---|---|---|
LinkedInUrl | URL | Person's LinkedIn profile or company LinkedIn page |
FirstName / LastName | Text | Person name (Person rows only) |
Title | Text | Job title (Person rows only) |
CompanyName | Text | Employer / company visited from |
WorkEmail | Work email (Person rows only, where available) | |
Website | URL | Company website |
Industry | Text | Industry category |
EstimatedEmployeeCount | Range | Headcount bucket (e.g. 51-200, 5001+) |
EstimateRevenue | Range | Revenue estimate (e.g. $1M - $5M) |
City / State / Zipcode | Text | Location |
AllTimePageViews | Number | Total page views across all time |
RecentPageCount | Number | Page views in recent window |
RecentPageUrls | JSON array | List of visited URLs (recent) |
LastSeenAt / FirstSeenAt | Datetime | Visit timestamps |
MostRecentReferrer | URL | Where they came from (e.g. Google, LinkedIn) |
Tags | JSON array | RB2B-assigned tags (e.g. ["Hot page"]) |
FilterMatches | JSON array | Filter rules this lead matched |
ProfileType | Person / Company | Row type |
TwentyCRM Integrationâ
RB2B exports are imported into TwentyCRM via a Python pipeline. The pipeline:
- Reads the CSV and splits rows by
ProfileType - Creates custom fields on
personandcompanyobjects (one-time setup) - Imports all companies first (creates stubs for companies referenced by persons but not in company rows)
- Imports all persons, linked to their company
- Scores and stages a shortlist of top opportunities
- Attaches a "Next Steps" checklist note to each opportunity
Custom fields created in TwentyCRMâ
These fields are added to both person and company objects, and to opportunity:
| Field name | Type | Source |
|---|---|---|
industry | Text | Industry |
estimatedRevenue | Text | EstimateRevenue |
allTimeViews | Number | AllTimePageViews |
recentPageViews | Number | RecentPageCount |
lastSeenAt | DateTime | LastSeenAt |
firstSeenAt | DateTime | FirstSeenAt |
leadTags | Text | Tags |
leadReferrer | Text | MostRecentReferrer |
visitedPages | Text | RecentPageUrls (deduplicated) |
score (opportunity only) | Number | Calculated (1-10) |
Lead scoring (1-10)â
| Signal | Points |
|---|---|
| Base | 2 |
| All-time views âĨ 5 | +1 |
| All-time views âĨ 15 | +2 |
| All-time views âĨ 30 | +3 |
| All-time views âĨ 50 | +4 |
| Recent views âĨ 3 | +1 |
| Recent views âĨ 10 | +2 |
| "Hot page" tag | +2 |
| Has work email | +1 |
| Max | 10 |
Pipeline stages assigned on importâ
| Stage | Condition |
|---|---|
MEETING | "Hot page" tag AND (has email OR views âĨ 20) |
SCREENING | Has email OR all-time views âĨ 10 |
NEW | Everything else |
Import Scriptsâ
Scripts live in scripts/resources/rb2b/. Run from workspace root.
Prerequisitesâ
# API key for the target TwentyCRM workspace (not the Pacing agency workspace)
# Add to root .env:
RB2B_TWENTYCRM_API_KEY=your-client-workspace-token
RB2B_TWENTYCRM_API_BASE=https://pacingagency.com/rest
1. Import companies and peopleâ
python3 scripts/resources/rb2b/rb2b-import.py \
--csv ~/Downloads/filtered_custom_report_XXXXXXXXX.csv
Creates all companies and people from the CSV. Custom fields are created automatically on first run if they don't exist.
2. Create top-N opportunitiesâ
python3 scripts/resources/rb2b/rb2b-opportunities.py \
--csv ~/Downloads/filtered_custom_report_XXXXXXXXX.csv \
--top 10
Scores all leads, selects the top N, creates opportunities with stage and score, and adds a "Next Steps" checklist note to each.
3. Add notes to existing opportunities (if needed)â
python3 scripts/resources/rb2b/rb2b-notes.py
Idempotent â skips opps that already have a note.
See scripts/resources/rb2b/README.md for full documentation.
Automation Opportunitiesâ
The current pipeline is manual (export CSV â run scripts). Potential next steps:
Near-term (low effort)â
- Zapier / n8n webhook: RB2B supports webhook output â route directly to TwentyCRM REST API without a CSV step
- Scheduled import: Trigger n8n on a schedule to pull RB2B webhook data and upsert into TwentyCRM
Medium-termâ
- Lead enrichment: After import, enrich company records with Apollo.io or Clay before scoring
- Automated email sequences: High-scoring leads (âĨ7) trigger an n8n workflow that sends a personalised cold email via Resend or Notifuse
- LinkedIn audience sync: Export scored leads to a CSV matched against LinkedIn Matched Audiences for retargeting
- Slack alert: n8n notifies a Slack channel when a score-10 lead appears
Architecture sketch (fully automated)â
RB2B webhook â n8n workflow
âââ Upsert person + company in TwentyCRM
âââ Score lead (views + tags + email)
âââ If score âĨ 7 â create opportunity + note
âââ If score âĨ 8 â send cold email via Resend
âââ If score âĨ 9 â Slack alert to sales channel
Account Accessâ
- Access: Client-specific â each client has their own RB2B account at app.rb2b.com
- Script pixel: Embedded on client website via GTM or direct
- Exports: Settings â Reports â Custom Report â Export CSV
Related Toolsâ
tools/twentycrm.mdâ target CRM for importstools/n8n.mdâ automation platform for future webhook pipelinetools/notifuse.mdâ email delivery for automated outreach sequences
Note Context
Importance Rating: Medium â useful for client outbound lead pipelines, not mission-critical infrastructure.
Focus Areas for Note:
- Person-level identification is the key differentiator vs company-level tools
- The import pipeline (CSV â TwentyCRM) is the current workflow; full automation via n8n webhook is the target state
- Scripts are reusable across client workspaces â the token and CSV path are the only things that change
Additional Context:
- No central Pacing account â each client has their own RB2B pixel and account
- The
working/folder in the workspace root contains run-specific logs (gitignored)
Last Updated: May 2026 Owner: Ben Power Status: Active (manual pipeline) â automation in planning