Build with live web data

Building a HubSpot enrichment loop with TinyFish

Pranav Janakiraman
hubspot enrichment

Account research can take hours of a sales rep's time before they ever speak to a prospect. Much of that work happens outside HubSpot, and the rep still has to bring the findings back into the record. Repeat that across a lead list and preparation starts to crowd out selling.

At TinyFish, I wanted that research to begin as soon as a company entered our CRM. We already had its name and domain. That should be enough to start gathering the context a rep needs for outreach.

The challenge was turning an open-ended research task into a useful CRM update. The worker needed a strategy for finding the fields our team uses to qualify and route accounts.

We built an enrichment worker around TinyFish Search and Fetch. Its harness takes a company from its first website visit through to an enriched HubSpot record.

How the harness researches an account

hubspot enrichment architecture
HubSpot enrichment architecture: webhook, queue, research tools, and CRM writeback.

As the model finds information, it calls write_fields to add values and source URLs to a structured draft. Validation checks the findings against the captured pages before the worker maps them into HubSpot properties. HQ has its own earlier check so territory information can be saved while sizing research continues.

The writer converts the findings into the formats the CRM expects, such as a country code or an employee band. It updates the original company record through the HubSpot API, with source links attached to the relevant fields.

Research OutputHotspot PropertySupporting Context
HQ city and countrytinyfish_hq_city, tinyfish_hq_country_codetinyfish_hq_source_url, confidence
Revenue rangetinyfish_annual_revenue_bandRevenue period and source URL
Employee rangetinyfish_employee_bandOptional count, as-of date, source URL
Company descriptiontinyfish_product_summaryCaptured source evidence in the run record
Public contact pagetinyfish_contact_page_urlURL of a page with an outreach route
Routing readinesstinyfish_routing_ready Validation status, missing fields, review notes

The team sees these findings in custom TinyFish properties on the company record.

One account through the loop

We followed one company through the loop to see what reached HubSpot. Below are the real record captures before and after enrichment, with identifying details redacted. We will call it Company A.

Before enrichment. Anonymized demonstration.
After enrichment. Identifying details are redacted.

For Company A, the researcher found HQ on the company's contact page and gathered sourced estimates for revenue and employee size. The trace below follows the HQ finding from search to the saved CRM property.

StepWhat happened
SearchA targeted search for [Company A] headquarters [candidate city] contact located a relevant source.
FetchTinyFish Fetch read the company's contact page.
ExtractThe model added the city and its source URL to the draft.
WriteAfter checking the source, the worker saved the city to tinyfish_hq_city and the URL to tinyfish_hq_source_url.
ConfirmA HubSpot API read returned the saved city and matching source URL.

The rep can use the location for account context and open the supporting page directly from the record.

What we have built, and what it costs

From September 18–21, the worker researched 349 companies with complete enrichment. A typical attempt took just under three minutes.

TinyFish Search and Fetch are free. The web research itself costs $0. TinyFish pricing: https://www.tinyfish.ai/pricing

ComponentCost per 100 companies researched
TinyFIsh Search and FetchFree ($0)
OpenRouter model usageApproximately $5.20

The result is cheap and reliable account research running in the background as leads arrive. Reps can open HubSpot with sourced context already in the record, giving them a head start on the conversation.

AI disclosure

Content on this website may be created or refined with the assistance of AI tools and is subject to human editorial review.

Get started

Start building.

No credit card. No setup. Run your first operation in under a minute.

Get $8 in Wallet fundsRead the docs