How to research companies with Linkup
Systematic, structured company research for sales prospecting, investment analysis, competitive intelligence, partnership evaluation, vendor assessment, and more.
In This Guide
Comprehensive Company Profile
Build complete profiles from multiple sources
Investment & Due Diligence
Deep research for investment decisions or M&A
Competitive Intelligence
Research competitors to inform strategy
Sales Account Research
Prepare for outreach or meetings
Market & Industry Research
Map market segments and landscapes
Quick Company Lookup
Fast context when you need it quickly
Overview
Company research is foundational to nearly every business workflow—sales prospecting, investment analysis, competitive intelligence, partnership evaluation, vendor assessment, and more. Linkup enables systematic, structured company research that goes far beyond basic firmographics, pulling together information from websites, news, filings, social presence, and more into actionable intelligence.
Why Linkup for company research?
multi-step researchDeep search executes: find website → scrape → find LinkedIn → find news → synthesize
structured outputReturns consistent company profiles ready for databases and workflows
agentic retrievalNavigates across company websites, LinkedIn, news sources, and regulatory filings
date filteringSurface recent developments and filter out stale information
Configuration
Recommended settings for company research
| Parameter | Value | Why |
|---|---|---|
depth | deep | Company research requires gathering from multiple sources |
outputType | structured | Consistent format for CRM, databases, and automation |
fromDate | 90 days typical | Surface recent developments for news and funding |
Use Cases
Practical examples with prompts and schemas
Comprehensive Company Profile
Build a complete company profile from multiple sources.
You are a business research analyst building a comprehensive company profile.
Company: {company_name}
Domain: {company_domain}
Execute thorough company research:
1. Website Analysis:
- Scrape {company_domain} for company description, value proposition, and positioning
- Identify products/services offered
- Find target customers and use cases
- Extract any visible customer logos or case studies
- Note pricing model if visible (freemium, subscription, enterprise, etc.)
2. Company Fundamentals:
- Search for LinkedIn company page to find:
- Employee count and growth
- Headquarters location
- Founded year
- Industry classification
- Search for company registration details if available
3. Funding & Financials:
- Search for funding history (rounds, amounts, investors)
- Find any revenue or valuation information if public
- Identify financial health signals
4. Leadership & Team:
- Find CEO/founder names and backgrounds
- Identify key executives
- Note any recent leadership changes
5. Recent Developments:
- Search for news from the past 90 days
- Find product launches or major announcements
- Identify any strategic moves (partnerships, acquisitions, expansions)
6. Market Position:
- Identify main competitors
- Find any analyst coverage or market positioning
- Note awards, recognition, or rankings
Return a comprehensive company profile with all findings.Investment & Due Diligence Research
Deep research for investment decisions or M&A due diligence.
You are an investment research analyst conducting due diligence.
Company: {company_name}
Domain: {company_domain}
Investment context: {context}
Conduct thorough investment research:
1. Business Model Analysis:
- Scrape website for detailed understanding of products/services
- Identify revenue streams and pricing model
- Assess scalability of the business model
- Find unit economics indicators if available
2. Market Opportunity:
- Search for TAM/SAM/SOM estimates for their market
- Find industry growth projections
- Identify market trends favoring or threatening the company
- Search for analyst reports on the sector
3. Competitive Landscape:
- Identify direct and indirect competitors
- Search for competitive comparisons and positioning
- Find any market share data
- Assess competitive moats and differentiation
4. Funding & Cap Table:
- Find complete funding history with all rounds
- Identify all known investors
- Search for any secondary transactions or valuation benchmarks
- Find any debt or non-equity financing
5. Traction & Metrics:
- Search for any public metrics (users, revenue, growth rates)
- Find customer testimonials and case studies
- Identify key partnerships and integrations
- Look for awards, rankings, or third-party validation
6. Risk Factors:
- Search for any negative news or controversies
- Identify regulatory risks in their space
- Look for customer complaints or churn signals
- Find any litigation or legal issues
- Assess key person risk and team stability
7. Recent Developments:
- Search news from past 6 months
- Find any strategic announcements
- Identify trajectory signals (growth vs. contraction)
Return detailed investment research with risk assessment.Competitive Intelligence
Research competitors to inform strategy and positioning.
You are a competitive intelligence analyst researching a competitor.
Competitor: {competitor_name}
Domain: {competitor_domain}
Our company: {our_company}
Our product category: {product_category}
Conduct competitive research:
1. Product Analysis:
- Scrape their website thoroughly for product features
- Identify their core value proposition vs. ours
- Find their pricing structure and packaging
- Note any recent product launches or updates
- Identify integrations and partnerships
2. Go-to-Market Strategy:
- Identify their target customer segments
- Find their positioning and messaging
- Search for their marketing channels and content strategy
- Look for case studies and customer testimonials
- Identify their sales motion (PLG, sales-led, hybrid)
3. Strengths & Weaknesses:
- Search for product reviews and comparisons
- Find G2, Capterra, or other review site ratings
- Look for user complaints and feature gaps
- Identify what customers praise
4. Business Health:
- Find recent funding or financial news
- Look for hiring patterns (growth vs. contraction)
- Search for any layoffs or restructuring
- Identify leadership changes
5. Strategic Moves:
- Search news for partnerships, acquisitions, or expansions
- Find any public statements about strategy or roadmap
- Identify new market entries or pivots
6. Customer Intelligence:
- Find their notable customers
- Search for customer churn stories or wins against them
- Identify customer segments they're strong/weak in
Return competitive intelligence with actionable insights.Sales Account Research
Research target accounts to prepare for outreach or meetings.
You are a sales research assistant preparing account intelligence.
Target account: {company_name}
Domain: {company_domain}
Our product: {our_product}
Upcoming: {meeting_or_outreach}
Research this account for sales preparation:
1. Company Context:
- Scrape website for business overview and priorities
- Identify their products/services and target market
- Find company size, growth stage, and recent news
- Understand their business model
2. Pain Point Discovery:
- Search for challenges they've mentioned publicly
- Find blog posts or content indicating priorities
- Look for job postings signaling initiatives
- Identify industry challenges that affect them
3. Technology & Stack:
- Search for technologies they use (job postings, builtwith, integrations)
- Identify current solutions in our category (competitor usage)
- Find integration requirements or preferences
4. Buying Signals:
- Search for recent funding (budget availability)
- Find executive changes (new leadership = new initiatives)
- Look for expansion news (growing companies buy more)
- Identify relevant job postings (building teams in our area)
5. Relationship Intel:
- Find mutual connections or customers
- Search for any past interactions with our company
- Identify warm introduction paths
6. Personalization Hooks:
- Find recent news to reference
- Identify executive interests or speaking topics
- Find company initiatives relevant to our product
Return account brief optimized for {meeting_or_outreach}.Market & Industry Research
Research companies across a market segment or industry.
You are a market research analyst mapping a market segment.
Market/Industry: {market_segment}
Geographic focus: {geography}
Research purpose: {purpose}
Conduct market research:
1. Market Overview:
- Search for market size estimates and growth projections
- Find key trends shaping the industry
- Identify major market drivers and headwinds
- Search for analyst reports and market studies
2. Competitive Landscape:
- Identify major players in {market_segment}
- For each major player, find:
- Company overview and positioning
- Estimated market share or relative size
- Recent funding or financial position
- Key differentiators
- Map the market by segment or tier
3. Emerging Players:
- Search for recently funded startups in {market_segment}
- Identify companies gaining traction or buzz
- Find emerging technologies or approaches
4. Market Dynamics:
- Search for recent M&A activity
- Identify partnership trends
- Find regulatory changes affecting the market
- Note any disruption signals
5. Customer Trends:
- Search for buyer behavior trends
- Find adoption patterns and barriers
- Identify evolving customer requirements
Return market intelligence report with competitive map.Quick Company Lookup
Fast, lightweight research when you need basic context quickly.
You are a research assistant providing quick company context.
Company: {company_name}
Domain: {company_domain}
Provide a quick company snapshot:
1. Scrape their website for:
- One-line description
- What they do (products/services)
- Who they serve
2. Find basic facts:
- Industry
- Approximate size (employees)
- Location
- Founded year
3. Recent context:
- Any notable recent news (last 30 days)
- Funding status
Keep research fast—essential context only.Best Practices
✓ Do's
- ✓Always try to include the domain — Company names are ambiguous; domains are unique identifiers
- ✓Use deep search for comprehensive profiles — Company research requires multiple sources (website, LinkedIn, news, filings)
- ✓Set date filters for news — Recent news is usually more relevant; filter to avoid stale results
- ✓Cross-reference multiple sources — Website + LinkedIn + news gives a more complete and verified picture
- ✓Scrape the website first — The company's own site is the most authoritative source for product and positioning info
✗ Don'ts
- ✗Don't rely on company names alone — "Apollo" could be dozens of companies; always use domain
- ✗Don't trust all news equally — Press releases are promotional; news coverage is more objective
- ✗Don't over-research for the use case — Quick lookups need different depth than investment diligence
- ✗Don't assume funding data is complete — Not all funding is announced publicly
Data Source Hierarchy
When researching companies, prioritize sources in this order:
Tier 1 — Primary Sources (Most Authoritative)
- • Company website (products, positioning, customers)
- • SEC filings (financials, risks, contracts) — for public companies
- • Official press releases
- • Company blog and documentation
Tier 2 — Professional Networks
- • LinkedIn company page (employees, growth, HQ)
- • LinkedIn job postings (hiring signals, tech stack)
- • Glassdoor/Indeed (employee sentiment, culture)
Tier 3 — News & Coverage
- • Major business publications (WSJ, Bloomberg, Reuters)
- • Tech publications (TechCrunch, The Information)
- • Industry trade press
Tier 4 — Third-Party Data
- • Crunchbase, PitchBook (funding data)
- • G2, Capterra (product reviews)
- • BuiltWith, Wappalyzer (tech stack)
Tier 5 — Community & Social
- • Twitter/X
- • Reddit, Hacker News
- • Industry forums
Integration Patterns
CRM Enrichment Pipeline
- New company added to CRM (manual or inbound)
- Trigger Linkup research with company name + domain
- Map structured output to CRM fields
- Set data quality score
- Flag incomplete records for manual research
Investment Research Workflow
- Deal sourced (inbound or outbound)
- Quick lookup for initial qualification
- If qualified → trigger comprehensive research
- Output to investment memo template
- Flag key questions for founder calls
- Refresh research before IC meeting
Competitive Intelligence System
- Define competitor list
- Schedule regular Linkup research (weekly/monthly)
- Compare against previous research
- Alert on significant changes (funding, product launches, leadership)
- Feed into competitive battlecards
Sales Account Prioritization
- Inbound leads enter system
- Trigger quick company research
- Score based on size, growth signals, industry fit, buying signals
- Route to appropriate sales queue
- Enrich further before outreach
Sample Integration Code
import requests
import json
from datetime import datetime, timedelta
from typing import Optional
class LinkupCompanyResearch:
"""Linkup integration for company research"""
def __init__(self, api_key: str):
self.api_key = api_key
self.base_url = "https://api.linkup.so/v1/search"
def _call_linkup(
self,
prompt: str,
schema: dict,
depth: str = "deep",
from_date: str = None
) -> dict:
params = {
"q": prompt,
"depth": depth,
"outputType": "Structured",
"StructuredSchema": json.dumps(schema)
}
if from_date:
params["fromDate"] = from_date
response = requests.post(
self.base_url,
headers={"Authorization": f"Bearer {self.api_key}"},
json=params
)
return response.json()
def quick_lookup(
self,
company_name: str,
company_domain: str
) -> dict:
"""Fast, lightweight company research"""
prompt = f"""
Quick company research:
Company: {company_name}
Domain: {company_domain}
1. Scrape website for one-line description and what they do.
2. Find: industry, size, location, founded year.
3. Any notable recent news (last 30 days).
Essential context only—keep it fast.
"""
schema = {
"type": "object",
"properties": {
"company": {"type": "string"},
"domain": {"type": "string"},
"one_liner": {"type": "string"},
"what_they_do": {"type": "string"},
"industry": {"type": "string"},
"employee_count": {"type": "string"},
"headquarters": {"type": "string"},
"founded": {"type": "integer"},
"funding_status": {"type": "string"},
"recent_news": {
"type": "array",
"items": {
"type": "object",
"properties": {
"headline": {"type": "string"},
"date": {"type": "string"}
}
}
}
}
}
from_date = (datetime.now() - timedelta(days=30)).strftime("%Y-%m-%d")
return self._call_linkup(prompt, schema, depth="standard", from_date=from_date)
def comprehensive_profile(
self,
company_name: str,
company_domain: str
) -> dict:
"""Full company profile research"""
prompt = f"""
Comprehensive company research:
Company: {company_name}
Domain: {company_domain}
1. Scrape {company_domain} for description, products, target market, customer logos.
2. Find LinkedIn page for employee count, HQ, founded year.
3. Search for funding history and investors.
4. Find CEO and key executives.
5. Search for news from past 90 days.
6. Identify competitors.
Return complete company profile.
"""
schema = {
"type": "object",
"properties": {
"company_name": {"type": "string"},
"domain": {"type": "string"},
"overview": {
"type": "object",
"properties": {
"description": {"type": "string"},
"industry": {"type": "string"},
"employee_count": {"type": "string"},
"founded_year": {"type": "integer"},
"headquarters": {"type": "string"}
}
},
"products_services": {"type": "array", "items": {"type": "string"}},
"target_market": {"type": "array", "items": {"type": "string"}},
"funding": {
"type": "object",
"properties": {
"total_raised": {"type": "string"},
"latest_round": {"type": "string"},
"key_investors": {"type": "array", "items": {"type": "string"}}
}
},
"leadership": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {"type": "string"},
"title": {"type": "string"}
}
}
},
"notable_customers": {"type": "array", "items": {"type": "string"}},
"competitors": {"type": "array", "items": {"type": "string"}},
"recent_news": {
"type": "array",
"items": {
"type": "object",
"properties": {
"headline": {"type": "string"},
"date": {"type": "string"},
"summary": {"type": "string"}
}
}
}
}
}
from_date = (datetime.now() - timedelta(days=90)).strftime("%Y-%m-%d")
return self._call_linkup(prompt, schema, depth="deep", from_date=from_date)
def competitive_research(
self,
competitor_name: str,
competitor_domain: str,
our_product: str
) -> dict:
"""Research a competitor"""
prompt = f"""
Competitive intelligence research:
Competitor: {competitor_name}
Domain: {competitor_domain}
Our product: {our_product}
1. Scrape website for products, features, pricing.
2. Identify their positioning and target segments.
3. Find product reviews and ratings (G2, Capterra).
4. Search for recent funding, hiring trends, news.
5. Identify strengths and weaknesses.
6. Find their notable customers.
Return competitive intelligence.
"""
schema = {
"type": "object",
"properties": {
"competitor": {"type": "string"},
"product_overview": {"type": "string"},
"key_features": {"type": "array", "items": {"type": "string"}},
"pricing": {
"type": "object",
"properties": {
"model": {"type": "string"},
"tiers": {"type": "array", "items": {"type": "string"}}
}
},
"target_segments": {"type": "array", "items": {"type": "string"}},
"strengths": {"type": "array", "items": {"type": "string"}},
"weaknesses": {"type": "array", "items": {"type": "string"}},
"review_scores": {
"type": "object",
"properties": {
"g2": {"type": "string"},
"common_praise": {"type": "array", "items": {"type": "string"}},
"common_complaints": {"type": "array", "items": {"type": "string"}}
}
},
"business_health": {
"type": "object",
"properties": {
"funding": {"type": "string"},
"hiring_trend": {"type": "string"},
"recent_news": {"type": "array", "items": {"type": "string"}}
}
},
"notable_customers": {"type": "array", "items": {"type": "string"}}
}
}
return self._call_linkup(prompt, schema, depth="deep")
def sales_account_research(
self,
company_name: str,
company_domain: str,
our_product: str
) -> dict:
"""Research account for sales preparation"""
prompt = f"""
Sales account research:
Target: {company_name}
Domain: {company_domain}
Our product: {our_product}
1. Scrape website for business overview and priorities.
2. Find pain points relevant to {our_product}.
3. Identify tech stack and current solutions.
4. Find buying signals (funding, hiring, expansion).
5. Identify key stakeholders.
6. Find personalization hooks (recent news, initiatives).
Return sales-ready account brief.
"""
schema = {
"type": "object",
"properties": {
"company_snapshot": {
"type": "object",
"properties": {
"description": {"type": "string"},
"industry": {"type": "string"},
"size": {"type": "string"},
"growth_stage": {"type": "string"}
}
},
"pain_points": {
"type": "array",
"items": {
"type": "object",
"properties": {
"pain_point": {"type": "string"},
"evidence": {"type": "string"}
}
}
},
"tech_stack": {"type": "array", "items": {"type": "string"}},
"buying_signals": {
"type": "array",
"items": {
"type": "object",
"properties": {
"signal": {"type": "string"},
"date": {"type": "string"}
}
}
},
"key_people": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {"type": "string"},
"title": {"type": "string"},
"talking_points": {"type": "array", "items": {"type": "string"}}
}
}
},
"personalization_hooks": {"type": "array", "items": {"type": "string"}}
}
}
return self._call_linkup(prompt, schema, depth="deep")
# Example usage
if __name__ == "__main__":
researcher = LinkupCompanyResearch(api_key="your-api-key")
# Quick lookup
quick = researcher.quick_lookup(
company_name="Stripe",
company_domain="stripe.com"
)
# Full profile
profile = researcher.comprehensive_profile(
company_name="Notion",
company_domain="notion.so"
)
# Competitive research
competitor = researcher.competitive_research(
competitor_name="Airtable",
competitor_domain="airtable.com",
our_product="database software"
)
# Sales prep
account = researcher.sales_account_research(
company_name="Figma",
company_domain="figma.com",
our_product="design collaboration"
)