Auto-enrich new HubSpot companies from their website

By General Input

When a new company lands in HubSpot, read its website to fill in industry, positioning, and notable customers, then post a heads-up to Slack.

Integrations

  • HubSpot
  • Firecrawl
  • Slack

Type

Agentic Task

Categories

  • Sales
  • Operations

When a new company is created in HubSpot (HubSpot webhook trigger on the new-company event), start an agent that enriches the record from the company's own website.

Step 1. Use HubSpot Get Company to load the new company record. Pull the website domain and the current values of these properties: name, domain, website, industry, description, numberofemployees, annualrevenue, and any custom properties the org uses for positioning, target market, or notable customers.

Step 2. If the domain is missing, blank, or an obvious placeholder, stop without writing anything to HubSpot and skip ahead to the Slack step with a short note that enrichment was skipped because no domain was found.

Step 3. Use Firecrawl Scrape URL on the homepage. Then attempt to scrape a small set of likely sub-pages: /about, /pricing, /customers, /case-studies. Skip any that 404, time out, or are blocked. Collect the markdown content from whichever pages succeed.

Step 4. Use Firecrawl Extract Structured Data against the scraped pages to pull out a JSON object with: industry (short label), positioning (one sentence describing the product and who it is for), target_customer (segment, persona, vertical), stage_hint (early-stage, growth, enterprise, public, or unknown), and notable_customers (up to 10 customer names or logos mentioned on the site). If a field cannot be confidently inferred from the scraped content, leave it null.

Step 5. Use HubSpot Update Company to write the enriched values back to the company record. Map positioning into the description property, industry into industry, target_customer and stage_hint and notable_customers into matching custom properties (create them if the org has them, otherwise fall back to description). Important: only overwrite a property if its current value is empty or null. If a rep has already filled in a field, leave it alone.

Step 6. If every scrape attempt failed or the extraction returned nothing useful, do not update HubSpot. Just continue to the Slack step with a short note explaining why the company was skipped.

Step 7. Use Slack Send a Message to post to the #sales-new-accounts channel (let the user pick the channel during setup). Keep the message under six lines: company name, one-line positioning, industry, target customer, stage signal, notable customers, and a direct link to the HubSpot company record (https://app.hubspot.com/contacts/{portalId}/company/{companyId}). If enrichment was skipped, post a single line saying the company was created but enrichment was skipped, with the reason.

Default to graceful failure throughout. The point is to give reps a head start, not to spam Slack or pollute the CRM with bad data.

Related prompts

Explore more prompts
Call overdue Xero customers with an AI collections agentWin back LiveChat visitors whose chats went unansweredTurn Mailjet email clicks into ranked HubSpot follow-upsiMessage campaign console with pre-flight checks and delivery boardChat quality review board for LiveChat support leadsA searchable RFP answer library your bid team drafts fromSee which target accounts just started advertising on LinkedInAccount health board that puts product usage next to your CRMLook up a customer's full chat history mid conversationLusha prospecting workbench with credit-safe reveals