Article

Firmographic, technographic, hiring and intent data: how they fit

Firmographic data says who a company is, technographic what it runs, hiring where it invests and intent what it is likely to buy. How the four differ, and how one key joins them.

Updated 5 October 20267 min read

Company data comes in four kinds, and each answers a different question about the same company: who it is, what it runs, where it is investing and what it is likely to buy next. This post sets out what separates firmographic, technographic, hiring and intent data, how fast each one moves and how to read each one correctly. It then joins all four for one company on a single key, so that you can ask a question none of them answers alone.

Four questions about one company

KindThe questionHow it movesWhere it sits in Fokals data
FirmographicWho is this company?Slowly: headcount as the company states it, the traffic tier monthlyThe identifiers on every company, Employee Headcount, Web Traffic
TechnographicWhat does it run?In steps, when a tool is adopted or droppedTechnology Stack, Technology Changes, Website Profile
HiringWhere is it investing?DailyJob Postings, Hiring Activity, Sales Team Metrics
IntentWhat is it likely to buy or build next?Weekly, from the dated signals of the trailing 90 daysIntent Scores, Company Signals

Read down the table and the data turns from description into activity. The first row moves slowly and tells you whether a company belongs in your list. The last can change in a week and tells you whether to look at it now.

Firmographic: who the company is

Firmographic attributes are the ones a company would put on a form: its identity, where it is listed, its industry, its size. In Fokals data each one arrives with its date.

  • Identity. Each company has one stable company ID. A listed company carries its ticker, MIC, ISIN, LEI and share-class FIGI, and its SEC CIK where it has one, and a brand or subsidiary carries the identifiers of its listed parent. The listed securities table adds the issuer's country, the type of security and the status of each listing, active or delisted.
  • Scale. Employee Headcount holds stated headcount over time, each figure with the date it refers to. Web Traffic gives the monthly traffic tier of each website.
  • Industry and size band. Market Series reports its weekly series across 21 industries, countries and company size bands, so a company can be read against its own cohort.

A firmographic value is a statement made on a date. Employee Headcount records the figure as the company stated it, so keep the reference date beside the number, and a series built on it stays point-in-time.

Technographic: what it runs

Technographic data records the technologies on a company's website: advertising pixels, analytics, commerce and content platforms, CRM and marketing tools. It comes in two forms that answer different questions.

  • Technology Stack is the state. One row per website and technology, with its first-seen and last-seen dates.
  • Technology Changes is the change. A dated event for every adoption, removal and platform migration, and for every new market, language, currency or app.

Website Profile adds what the site offers: its markets, languages, currencies, apps and key pages. State tells you whether a company fits, because it already runs the platform your product works with. Change tells you when to look. Read each for what it records. A first observation sets a baseline and is never counted as a change, so a tool already in place carries a first-seen date, and an adoption is dated by its event in Technology Changes.

Hiring: where it invests

A job posting says where a company's next money goes: a function, a level, a place and sometimes a salary. Job Postings has one row per role, labelled by job function, seniority and ten role flags, with its location, its work mode, the tools it names and advertised pay on one annual US-dollar scale. Hiring Activity counts open, new and closed postings per company for each closed UTC day, with breakdowns by function, seniority, country and work mode. Sales Team Metrics gives a weekly view of the sales organisation.

Hiring moves daily, and it is specific. A run of senior data roles in a country where the company had no postings says more than any attribute on a form. Read a posting for what it records, which is an intention to hire. How long a role stays open is a measure in its own right, and the daily counts give it to you.

Intent: what it is likely to buy

Intent is built on the other three. A Fokals score is computed from dated signals that the rest of the data records: a tool adopted or removed on the website, a role that names a tool or builds a function, a private capital raise reported in a regulatory filing, an announcement. Each signal counts towards one or more of 69 topics in 9 groups and is weighted by recency. The signals of the trailing 90 days become a weekly score from 0 to 100 per company and topic in Intent Scores, and the five strongest travel with it as evidence. The post on how Fokals intent scores are built sets out the method.

That has a practical consequence. If you give a model the intent score, the technology events and the posting counts as three separate inputs, you count the same event more than once. Use the score when you want one number per topic, and the underlying events when you want to weigh them yourself.

Elsewhere the term often means behavioural intent, measured from what people read. Fokals intent is action-based. The score is built from what a company itself does in public, and every score carries the dated signals behind it, so a rep or a model reviewer can open the evidence and check it.

One key joins them

What makes the four usable together is a shared key. Every company-level Fokals dataset carries the company ID, so any two of them join on it, and the listing identifiers join the result to market data on ISIN, on FIGI, or on ticker with MIC. The post on the identifiers that make company data joinable covers the identifiers themselves, and the data dictionary defines every column used below.

The query builds one row per company from all four kinds, for the companies with a score on the CRM topic in the week starting 21 September 2026. It takes Salesforce as its example of a tool.

with size as (
  select company_id, employees,
         row_number() over (partition by company_id order by as_of desc) as n
  from company_headcounts
),
stack as (
  select company_id, min(first_seen_at) as first_seen_at
  from company_technologies
  where technology = 'salesforce'
  group by company_id
),
hiring as (
  select company_id, sum(new_postings) as new_postings
  from company_hiring_daily
  where day between date '2026-09-21' and date '2026-09-27'
  group by company_id
)
select i.company, i.isin,
       s.employees,                        -- who it is
       k.first_seen_at as tool_first_seen, -- what it runs
       h.new_postings,                     -- where it invests
       i.score, i.surge                    -- what it is likely to buy
from company_intent_weekly i
left join size s   on s.company_id = i.company_id and s.n = 1
left join stack k  on k.company_id = i.company_id
left join hiring h on h.company_id = i.company_id
where i.topic = 'crm'
  and i.week_start = date '2026-09-21'
order by i.score desc;

Three things in it are deliberate.

  1. The joins are left joins, so a company stays in the result whichever of the four kinds it appears in. Each kind has its own coverage and refresh cadence, and an empty cell reads as not observed, which a model should treat as missing and never as zero.
  2. Employee Headcount and Technology Stack are reduced to one row per company before the join, because a company can have several headcount statements and several websites.
  3. The hiring window is the same closed week as the score, so both describe the same seven days.

Reading the four together

Take Acme Robotics, an illustrative company. Its latest stated headcount is 640, and its Technology Stack lists no CRM tool. In one week it opens a sales operations role whose title names a CRM tool, and a CRM tool is adopted on its site. Its CRM score for that week is a strong one, more than double its own twelve-week average, and the surge flag is set.

Each kind did a different job. The slow data said the account was worth watching: the right size, and a gap where your product goes. The fast data said something was happening, and intent put the two events into one dated number with its evidence, so the account rose in a list you sort once a week. Fit came from who the company is and what it runs, and timing from where it invests. The guide to building account-based marketing segments from company signals turns that division into segment rules.

Keep each value's date when you combine them. A headcount stated for the last financial year, a tool first seen last month and a posting opened yesterday are observations of three different moments. A table that carries the headcount's reference date, the first-seen date and the posting day beside the values keeps them apart, and keeps the result usable point-in-time.

What the four have in common

The four kinds differ in what they measure and share how they are recorded, which is why they combine without special handling.

  • Company-level throughout. Every record describes an organisation, so all four load beside the accounts in your CRM or the names in your portfolio and join on one key.
  • Dated. Each record carries the time it was observed.
  • Written once. Daily and weekly datasets are written once, after the period closes, and are never revised. A row you have loaded stays exactly as you loaded it.
  • Versioned. Labels and scores are produced under named, frozen versions, and a breaking change ships as a new version with at least 90 days' notice.

All four are collected from first-party company sources and public records, and processed in-house: what companies publish on their own websites and careers pages, what they announce and what they file. The data therefore records what a company does in public, and a quiet week on a topic reads as a week without public activity on it. The methodology documents each dataset.

Frequently asked questions

What are the main types of B2B company data?

Four kinds cover most uses. Firmographic data describes who a company is: industry, size, location and listing. Technographic data records the technologies it runs. Hiring data records the roles it advertises, which shows where it is investing. Intent data estimates what it is likely to buy or build next. Contact data, which describes people and not companies, is a separate category with its own sources.

Is hiring data a type of intent data?

They overlap without being the same. Hiring data is a record of job postings and answers questions of its own: where a company is growing, at what seniority and at what pay. Intent data is an inference about what a company will buy. Some intent scores use postings as one input, for example a role that names a tool, while others are built from what people read online.

How do you combine firmographic, technographic and intent data?

Join them on one company key, then give each a job. Use firmographic and technographic state to decide whether an account fits, and hiring and intent to decide when to act. Keep the date of every value, treat a missing value as unknown and not as zero, and avoid counting one event twice when a score already includes it.

Which type of company data should you start with?

Start from the question. To define or size a market, begin with firmographic data. To find accounts by what they already run, add technographic data. To rank the accounts you already have by timing, add hiring and intent. Most teams end up using all four, because fit without timing gives a static list and timing without fit gives noise.

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