MARKET RESEARCH
Multi-Competitor Earnings Positioning Matrix
On a schedule, pulls the latest earnings transcripts for a list of competitors, extracts each one's stance on shared strategic themes.
How it runs
The automated pipeline, trigger to output.
- TriggerScheduled run across competitor set
- ActionFind each transcript URL via PerplexityPerplexity
- ActionScrape transcripts with FirecrawlFirecrawl
- ActionMap stances on shared themes + quotes (OpenAI)OpenAI
- LogicNormalize stances into comparable labels
- OutputUpsert rows into Airtable matrixAirtable
What it does
Builds a side-by-side positioning matrix across a whole competitive set in one run. For each tracked competitor it pulls the latest earnings transcript and extracts where they stand on shared themes you define (AI investment, pricing power, international expansion, margin discipline), each cell backed by a quote. The result is a structured Airtable grid you can sort, filter, and chart.
When to use it
Use it when you cover a category, not a single rival, and need to see who is leaning into what at a glance. Perfect for strategy decks, board prep, and spotting when the whole field pivots the same direction.
How it works
- 1A schedule fires after the season's calls have posted.
- 2The workflow loops the competitor list, using Perplexity to locate each latest transcript URL.
- 3Firecrawl scrapes each transcript to text.
- 4OpenAI maps every competitor onto the shared theme axes, attaching a verbatim quote per cell.
- 5A logic step normalizes stances into comparable labels (leaning in / steady / pulling back).
- 6Each competitor's row, with quotes, is upserted into the Airtable positioning matrix.
Set it up
What you configure once, before turning it on.
- 1Connect PerplexitySearch-grounded answers with citations.
- 2Connect FirecrawlCrawl, scrape, structured extract.
- 3Connect OpenAIModels, embeddings, files.
- 4Connect AirtableBases, tables, views, automations.
- 5Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
- 6Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
- 7Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.
More Market Research workflows
Enrich Inbound Accounts with BigQuery Firmographics and Score Fit
When a new account row lands in Airtable, joins it against BigQuery public business datasets to attach firmographic attributes.
Blend BigQuery TAM with Live Competitor Signals into a Notion Brief
On demand, sizes a chosen segment from BigQuery public data, gathers current competitor signals via Brave Search, and synthesizes a one-page market brief into Notion.
Allocate Sales Territory TAM from BigQuery Geo Data to HubSpot
When triggered by a webhook, queries BigQuery public ZIP-level business data to compute TAM per sales territory.
Hiring Surge Detector with Slack Alert
Detects when a target account's open-role count jumps above its recent baseline and posts a ranked Slack alert to the GTM channel so reps can act on a company that is clearly…
Tech-Stack Shift Inference from Job Descriptions
Reads new job descriptions for target accounts, uses an LLM to extract named technologies and infer stack changes.
Weekly Hiring-Intel Briefing for GTM
An agent reviews the week's accumulated hiring signals across all target accounts, writes a narrative briefing that infers each account's likely initiatives.
Run it inside a business
This workflow drops into a full company template. Import the org, and this is one of the playbooks its agents run.

Run this workflow in your colony.
14-day trial. No DevOps. No Sales call. Provisioned in under a minute.
