Your GTM belongs in gitRegister
Blog

Monitor Buying Signals on a List of Accounts

16 Oct
6min read

To monitor buying signals on a list of accounts, decide first which events would change what you say (hiring the role you sell into, a public statement about the problem, how fresh it must be), run the free detection check across the whole list, then pay for job-post and public-post lookups only on the accounts it did not cover. Report one row per account that fired, with a date and a link, and nothing for the rest.

Fit tells you who to talk to; timing tells you when. The monitor-buying-signals skill runs this from your coding agent, and every step below is a Cargo CLI call you can run yourself.

Set it up #

shellscript
npm install -g @cargo-ai/cli
cargo-ai login --email you@company.com
npx skills add getcargohq/gtm-skills/monitor-buying-signals

A new account starts with 100 free credits and needs no card. Then ask your agent, for example: “Watch our 20 open-opportunity accounts and tell me which started hiring RevOps in the last 30 days.” The skill asks three questions before it runs anything: the role you sell into, what they would say in public if they had the problem, and how many days old a signal may be. A watchlist built without those answers returns everything and means nothing.

The checks, cheapest first #

1. The detection feed, free. Sillage searchLeads reads the detections already delivered to a signal model in your workspace, filtered to your accounts. It costs 0, so it runs on the whole list.

shellscript
cargo-ai orchestration action execute \
  --action '{"kind":"connector","integrationSlug":"sillage","actionSlug":"searchLeads"}' \
  --data '{"modelUuid":"<your signal model>","companyDomains":["acme.com","globex.com"],"limit":100}' \
  --wait-until-finished

An empty result means nothing has been delivered for those accounts, not that no signal exists. Only the second justifies the paid checks.

2. Job posts for the role you sell into. TheirStack searchJobs, filtered by company domain, job title and age:

shellscript
cargo-ai orchestration action execute \
  --action '{"kind":"connector","integrationSlug":"theirStack","actionSlug":"searchJobs"}' \
  --data '{
    "companyFields": {"company_domain_or": ["acme.com","globex.com"]},
    "fields": {"job_title_or": ["Head of RevOps","Revenue Operations"], "posted_at_max_age_days": 30},
    "limit": 50
  }' \
  --wait-until-finished

posted_at_max_age_days is the freshness number. Without it the search returns the back catalogue and every account looks like it is hiring.

3. What the company said in public. X getUserPosts on the company’s own handle, confirmed from its website first, because squatted and parody handles resolve fine:

shellscript
cargo-ai orchestration action execute-batch \
  --action '{"kind":"connector","integrationSlug":"x","actionSlug":"getUserPosts"}' \
  --records '[{"handle":"acme","limit":20}]' \
  --wait-until-finished

Cargo platform data, 90 days to Oct 16 2026: job-posting searches through TheirStack searchJobs ran 117,000 times on Cargo.

What comes back #

One row per account that fired:

ColumnWhy it is there
signalwhat happened, in words
datewhen; a signal with no date cannot be judged fresh
sourcethe link; a trigger nobody can open is a rumour
so_whatthe one line on why it changes the conversation

Keep it separate from your fit score. A perfect-fit account with no trigger and a poor-fit account hiring aggressively can average to the same number, which hides both answers. How long each kind of signal stays worth acting on is its own decision: see how long a buying signal is worth.

What it costs #

CheckCredits (list price)
Sillage searchLeads0
TheirStack searchJobs0.5 per job post returned
X getUserPosts0.02 per package of up to 100 posts

Sample 10 to 20 accounts first and read two numbers: the cost, and how many accounts fired. If two in twenty fired, a weekly run over 500 accounts is worth it. If none did, the triggers are wrong and a wider run will not fix that. On a schedule, check only accounts whose last check is older than the interval, or every run re-bills accounts that did nothing.

What it will not do #

  • Give you a reason to send. A signal says a message might be relevant; it is not a lawful basis for sending one. “They are hiring” and “they posted about it” are not consent. Without a basis, the output is research.
  • Build lists from engagement. Followers, likers and retweeters are out of scope: people who engaged with a post did not ask to hear from you.
  • Run on its own. This skill is a one-off check from your agent. For a pipeline that keeps watching, the cookbooks deploy one: new-hire-detection for people who just took a role you sell to, and social-listening for public conversations about your problem.

Run it with the monitor-buying-signals skill. Related: turn new hires at target accounts into outbound and signal-based selling.

AurelienOct 16, 2026

Give your agents a runtime

Bring the agents you have.Start free, deploy in one command.