Score new HubSpot companies with Semrush SEO intel

By General Input

When a company lands in HubSpot, an agent pulls Authority Score, top keywords, and best pages from Semrush and writes a one-look summary to the record.

Integrations

  • HubSpot
  • Semrush

Type

Agentic Task

Categories

  • Sales
  • Marketing

Build me an agent workflow that automatically enriches new HubSpot companies with Semrush SEO intel so my sales team can tell at a glance whether an inbound account is a serious SEO operation.

Trigger: a HubSpot webhook that fires when a new company is created. The agent should read the company's domain (and the company record ID) from the webhook payload. If the company has no domain set, exit early without writing anything.

What the agent should do, in order:

1. Call Semrush's Backlinks Overview on the domain to pull Authority Score and total referring domains.

2. Call Semrush's Get Domain Organic Search Keywords (US database by default, make this configurable) to grab the top three organic keywords the domain ranks for, along with their positions and search volumes. Also use this report to estimate monthly organic traffic by summing the traffic column for the top results.

3. Call Semrush's Get Domain Organic Pages to grab the two or three best-performing pages by traffic share.

4. Distill everything into a short text summary that includes: Authority Score, total referring domains, top three organic keywords (with positions), an estimated monthly organic traffic number, and two or three notable pages with their URLs.

5. Call HubSpot's Update Company on the company record. Write the numeric Authority Score to a numeric property (default name: semrush_authority_score, but the user should be able to pick the property) and write the summary text into a notes or description property on the company. Keep the summary under about 600 characters so it renders cleanly in the HubSpot sidebar.

Important edge case: Semrush returns the literal string 'ERROR 50 :: NOTHING FOUND' (with HTTP 200) for small, new, or unindexed domains. Treat this as an empty result, not a failure. When any of the three Semrush reports return NOTHING FOUND, the agent should still call Update Company and write a summary that says something like 'No Semrush data available for this domain yet (likely a small or new site).' Do not error out the workflow.

Other things to handle gracefully: an invalid or junk domain on the HubSpot record (just log it and skip), Semrush API unit balance issues (log a clear error), and HubSpot rate limits (retry with backoff).

Keep the agent focused. Do not create deals, contacts, tasks, or Slack messages. Just enrich the company record.

Related prompts

Explore more prompts
Turn Mailjet email clicks into ranked HubSpot follow-upsiMessage campaign console with pre-flight checks and delivery boardA 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 revealsWhich companies your LinkedIn ads reach, matched to your CRMLead response desk with a running clock on every new leadApprove Lusha enrichment field by field before HubSpot saves it