Use case

Commercial due diligence on a target with public signals

Before the data room opens, public signals can show where a target is hiring, selling and announcing, and how it compares with its competitors. Here is the method.

Updated 5 October 20267 min read

Before a data room opens, a deal team can still form a view of a target from what the target and its competitors publish. This guide shows how to build that outside-in view from Fokals signals, using Hiring Activity, Sales Team Metrics, Technology Stack, Technology Changes, Company News, Company Funding and Market Series: how to set up a panel of the target and its competitors, which measures to compute, how to turn them into hypotheses for management sessions, and how to word the findings. A first pass is a matter of days, because the pulls are a few calls per company and most of the time goes on reading what is behind the numbers.

What an outside-in view can hold

Public signals answer a defined set of commercial questions, and the table sets out which, so that the scope is agreed before the work starts.

QuestionPublic evidenceFokals datasetWhat it gives a deal team
Is the target adding capacity, and where?Open and new postings by function, seniority and countryHiring Activity (company_hiring_daily)A dated view of capacity against the panel
Is it moving up market or into new countries?Enterprise-segment sales roles, first sales postings by countrySales Team Metrics (company_sales_weekly)The sales build-out, week by week
What does it run, and what has it changed?Tools on its website, platform changesTechnology Stack (company_technologies), Technology Changes (company_tech_events)The stack and each change to it, dated
What does it say about itself?Launches, partnerships, funding, leadership rolesCompany News (company_news)The company's own announcements in 13 event types
Has it raised private capital?Private capital raises reported in regulatory filingsCompany Funding (company_funding)Amounts offered and sold, with dates

Every record is collected from first-party company sources and public records, carries the time it was observed and is never revised, which lets a finding cite its evidence and be rerun as of any date.

Setting up the panel

The panel is the target and the competitors you compare it with, held in a table of your own. Resolve each company to its company ID by website domain. Build the competitor list from three sources and record the reason for each entry: the client's own list, the companies that carry the target's industry label, and the names that experts and management give you. The companies endpoint of the REST API filters by industry label and headquarters country, which gives a first list to prune by hand.

Check that the target resolves to the right company before any number is read. Names collide, a brand can belong to a group, and a target may run several websites. Confirm the domain with management or from the target's own materials, and read a sample of its postings at their links to see that they describe the target's business.

Fix the panel and date it. A panel that changes between drafts changes every rank in the report. Percentile ranks mean little on a panel of five, so read each peer by name when it is that small.

Measuring the target against the panel

Start with hiring, because Hiring Activity gives each company the same daily table. The query ranks each panel member on postings opened in the last 28 days and compares the count with the 28 days before. deal_panel is your own table with company_id, name and is_target, and the SQL is PostgreSQL.

with w as (
  select
    company_id,
    sum(new_postings) filter (where day >  current_date - 28)                             as new_now,
    sum(new_postings) filter (where day <= current_date - 28 and day > current_date - 56) as new_before,
    max(open_postings) filter (where day = current_date - 1)                              as open_now
  from company_hiring_daily
  where company_id in (select company_id from deal_panel)
  group by company_id
)
select
  p.name,
  p.is_target,
  w.open_now,
  w.new_now,
  w.new_before,
  round(100.0 * (w.new_now - w.new_before) / nullif(w.new_before, 0), 1) as change_pct,
  round((percent_rank() over (order by w.new_now))::numeric, 2)          as rank_in_panel
from w
join deal_panel p using (company_id)
order by w.new_now desc;

Then read the panel across five areas, each against the panel median and not only the target's own history.

  • Where the hiring is. Hiring Activity by function, seniority and country, as shares of open postings. A target hiring mostly in one function and one country is a different company from one spread across ten.
  • Sales build-out. In Sales Team Metrics: open sales postings as a share of all open postings, the segments sold to, new countries, the move upmarket, median on-target earnings and whether a quota is stated. These are what the company advertises. The guide to tracking sales team build-out reads them in depth.
  • Technology. Tools in the Technology Stack with their first-seen dates, platform events in Technology Changes, and open AI roles in Hiring Activity.
  • Announcements. Counts of product launch, partnership, expansion and funding round events in Company News, each with its date and link.
  • Funding. Company Funding gives the amount offered, the amount sold and the first-sale date of private capital raises reported in regulatory filings.

A panel is a small sample, so place its median against the whole industry with Market Series (market_series). The hiring_new family gives postings opened per 100 companies by industry, country and size band. Divide the rate by 100 for the average a company in the cohort opened in the window, and set the target's count over the same window beside it. The average is a mean, so a few large hirers pull it up, but the comparison does not depend on which peers you chose.

An illustrative reading: in a panel of 14 companies, Acme Robotics, the target, opened 24 postings in the last 28 days against 9 in the 28 before, a rise of 167 percent, and ranks third on new postings. Fifteen of the 24 are sales roles, and its Sales Team Metrics row shows the move upmarket flagged for the first time. That is not a finding about growth. It is a hypothesis to put to management: is the company moving to larger customers, and what has it hired to do it?

Before a rank goes into the report, read what is behind it. Open ten of the target's newest postings at their links and look at the titles, locations and functions. A rise of 24 postings that is one role opened in 24 cities reads differently from 24 different roles, and a cluster of postings carrying the team-build flag reads as a team being assembled.

From signals to hypotheses

Write each pattern as a hypothesis with a question attached, because that is what the signals can support. The conclusion belongs to the interviews and the data room.

Pattern in the dataHypothesis to testQuestion for management or experts
New postings rising, with a first enterprise-segment sales roleA move to larger customersWhat share of pipeline is enterprise, and how long is the sales cycle?
First sales postings in a new country, with a new market or currency on the websiteEntry to a marketWhich customers are there, and is there a local entity?
Open postings falling while closures riseSlower investmentIs there a hiring freeze, and what budget is it tied to?
A platform event and several page events in one observationA site or product rebuildWhat is on the roadmap, and what did the migration cost?
A recent private capital raise with a large amount soldNew capitalWhat is the money for, and on what terms?

Keep an evidence log beside the report. Each finding gets a line with the dataset, the fields, the as-of date or observation time, and the link to any posting or announcement. A reader at the investment committee can then check a figure at its source, and a later draft can say what changed since the last one.

How to word the findings

State these in the report, in the same plain words each time.

  • As-of date. Every observation is dated and never revised, so each finding names its as-of date and can be rerun on the same panel later.
  • Boards. Postings are the roles a company advertises on its own boards. Ask management whether the board is the whole picture for a target that also recruits through agencies.
  • Small numbers. A target with a handful of postings supports counts, not percentages.
  • Panel. Choose the competitors yourself and record why. The industry label gives a first list.
  • Labels. Function, seniority, segment and event type are produced under named, frozen versions. Read the postings you quote at their links.
  • Headcount. Employee Headcount gives stated headcount over time, a useful check on the hiring rate.

How Fokals delivers it

Every dataset joins on the company ID, so one panel table drives every pull. The hiring dataset is refreshed daily, and announcements daily to every three days. Through the REST API, each panel member has per-company endpoints for 90 days of hiring (/companies/{id}/hiring), the last twelve weeks of sales organisation (/companies/{id}/sales) and announcements (/companies/{id}/news), so a panel of twenty takes sixty calls. Bulk files carry the same datasets when you prefer to load them. The coverage page says which companies are in the index, and the methodology sets out how each dataset is built.

For the competitor side of the work, see the guide to reading a competitor's strategy from its hiring, and for the funding side, the guide to following private funding from regulatory filings.

Frequently asked questions

What can a deal team learn about a target before the data room opens?

Public signals show where a target is hiring, how its sales organisation is growing, what it runs and has changed on its website, what it announces and what private capital it has raised, each with a date, and they allow a comparison with competitors. Use the outside-in view to prepare hypotheses and questions, then test them in the data room, management sessions and expert calls.

What public data shows how fast a private company is growing?

Job postings are the most direct: open and newly opened postings by function and country, and the sales organisation it advertises. Technology and platform changes on its website, its own announcements and any private capital raise reported in regulatory filings add context. Treat them as signs of investment and direction, and test them against the target's figures.

What does Fokals give a deal team about a private company?

Hiring Activity, Sales Team Metrics, the Technology Stack with Technology Changes, Company News and Company Funding, joined on one company ID. Each record is dated and carries its evidence, so a finding cites a posting, an announcement or an amount offered and sold. Refresh runs daily to weekly, delivered by REST API or as bulk files.

How do I choose the competitors for the panel?

Start from the client's list, add the companies that carry the target's industry label, and ask management and experts who they meet in deals. Record why each is in. Fix the panel and date it before you compute ranks, then ask management whether it would name each peer.

Which signals give the quickest read on a target?

Start with Hiring Activity: postings opened in the last 28 days against the 28 before, and the spread across functions and countries. Add Sales Team Metrics for the sales build-out and Company News for what the target says about itself. Each takes one pull per company, and each yields a hypothesis you can put to management.

The queries and code on this page are examples to adapt. Test them in your own environment before you rely on them.