Skill: HG Firmographic
No more 'we sized the subsidiary, not the parent' surprises in the deal review.
Overview
Make sure 'research Acme' returns the company you meant, not a small subsidiary. Claude checks which entity a domain actually resolved to, picks the brand-level parent or the ultimate group deliberately, quotes a band when no exact figure exists, and resolves a bare company name to the right record before any paid call.
Use cases
Account briefs sized for the right entity
Claude reads the company level after every domain lookup. When a group's domain resolves to a subsidiary, it follows the parent link the workflow expects and records the choice so your AE can audit it.
Numbers quoted at the precision HG has
An exact headcount is quoted as an HG estimate; when only a band exists, the brief says '10,001 to 50,000 employees' instead of inventing a precise figure.
Name-only requests resolved before spending
Given just a company name, Claude searches, compares candidates on domain, country, level and size, and asks you when two remain plausible, before any paid call runs on the wrong company.
View full skill
HG Firmographic
When to use
- A workflow has a domain or hg_id and needs the canonical HG company record: name, size, revenue, industry, HQ location, hierarchy level.
- A prompt has only a company name and must resolve it to an hg_id before any other call.
- An author needs to know which entity a domain actually resolved to (brand, group or subsidiary).
Tools you'll touch
company_firmographic: firmographic lookup for up to 25 companies. Cost: 0.1 per company, billed proportionally to the batch. Cached 30 days.search_companies: name or criteria search returning identity only. Cost: 1 per 100 companies returned. Seehg-search-companies.company_hierarchy: the ownership tree, when level fields aren't enough. Seehg-subsidiary-handling.
Calling it
- Pass
hg_idsordomains, never both (passing both is rejected). Up to 25 per call. - Domains are normalised: scheme,
www., paths and case are stripped. Other subdomains are kept (uk.acme.comis notacme.com). - The response is
{ companies: [...] }. Unmatched companies are omitted; a fully unmatched batch returns an empty array. Match results bycompany_idorcompany_domain, never by position.
What HG returns
Each entry has company_id, company_domain and a firmographics object:
| Field | Meaning |
|---|---|
name, domain, domain_normalized | Identity. domain can be null |
employees_total, employees_band | Exact headcount (null when only a band is known) and the band |
revenue_total, revenue_band | Annual revenue in USD (null when only a band is known) and the band |
industry_id, industry_name | HG industry (23 buckets, no Software bucket) |
naics_code, naics_name, sic_codes, sic_names | Standard classifications |
city_name, state_name, country_code, country_name, continent_name | HQ location |
it_spend | Modeled IT spend estimate in USD (null if unavailable) |
fortune_500_rank, forbes_2000_rank | Null if not ranked |
company_level | Group HQ, Corporate Parent, Domestic Parent, Subsidiary or Site |
corporate_parent_id, corporate_parent_name | The brand-level parent (null at the top) |
global_hq_id, global_hq_name, global_hq_country_code | The ultimate parent. Absent (not null) for a Group HQ, which is its own GHQ |
When your org has connected its own account data, the entry may also carry customer_data. That is the org's own record for the account, not HG data: cite it as "your CRM record", never as HG.
No ticker or public/private flag is returned. Don't decide "skip SEC, the company is private" from firmographics.
Hierarchy: read the level fields, not the id
- HG ids are hexadecimal; leading zeros may be omitted, so 31- and 32-character forms are the same company. Length says nothing about hierarchy. Compare ids case-insensitively after left-padding to 32 characters.
- Check
company_levelafter every domain lookup. A group's main domain can resolve to a small subsidiary, and every downstream call then returns subsidiary-scale data. global_hq_idis the ultimate parent: a brand owned by a larger group points at the group. For brand-level questions usecorporate_parent_id; useglobal_hq_idonly when the user asks about the whole group.- Full decision flow and logging:
hg-subsidiary-handling.
Resolving a name without a domain
- If you can find the official domain (user input, CRM, the company's site), use it: domain lookup is the most reliable route.
- Otherwise call
search_companieswithcompany_identifiers.name,firmographics.company_level:"CORPORATE_PARENT"and a second filter such ascountry_codes. Name search is a token-substring match, so a brand name can return hundreds of loosely matching entities. - It returns identity only (
hg_id,name,domain,domain_normalized). Pass the candidatehg_ids tocompany_firmographicand choose on name, domain, country, level and size. - If two candidates remain plausible, ask the user before spending on paid calls.
How to read it
Size and revenue. There is no confidence field.
employees_total/revenue_totalpresent → quote the figure as an HG estimate: "about 12,400 employees (HG)".- Null → quote the band: "in the 10,001 to 50,000 employee range".
- Revenue and IT spend are modeled estimates. Round them in prose.
NAICS depth. naics_code is a 6-digit NAICS 2012 leaf. Use it as is to describe the company. For peer cohorts, take its 4-digit industry group as the grain, then expand that group back to its 6-digit leaves before searching, because search_companies only matches leaves. See hg-peer-cohort-selection.
Industry bucket. The HG industry taxonomy files software publishers under a computer-manufacturing bucket. For tech companies, describe the industry from NAICS or SIC, not industry_name.
Common pitfalls
- Reading hg_id length as a hierarchy signal. It is a formatting artefact. Use
company_level. - Accepting a domain's match without checking
company_level. A brand domain can resolve to a small subsidiary. - Jumping to
global_hq_idfor a brand question. That's the ultimate parent. Usecorporate_parent_id. - Quoting a band as an exact number. If
*_totalis null, say the band. - Citing
customer_dataas HG. It's the org's own record. - Passing both
hg_idsanddomains. The call is rejected.
Citation rules
Cite company_firmographic once at the section boundary ("HG, October 2026"). For a name resolved through search_companies, state the search term and the chosen candidate's domain.
Reference
- V2 tool docs: https://phoenix.hginsights.com/docs/mcp-tools/v2/company-firmographic
- Full docs for LLMs: https://phoenix.hginsights.com/docs/llms-full.txt
- Related skills:
hg-mcp-calling-rules,hg-subsidiary-handling,hg-search-companies,hg-peer-cohort-selection,hg-company-profile