# How to definitively identify company officers across snapshot (Prod195) and streaming api data?

**URL:** <http://forum.companieshouse.gov.uk/t/how-to-definitively-identify-company-officers-across-snapshot-prod195-and-streaming-api-data/10740>\
**Category:** Information\
**Created:** [January 20, 2025, 7:32am UTC](http://forum.companieshouse.gov.uk/t/how-to-definitively-identify-company-officers-across-snapshot-prod195-and-streaming-api-data/10740 "2025-01-20T07:32:22Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![huwlthomas](http://forum.companieshouse.gov.uk/user_avatar/forum.companieshouse.gov.uk/huwlthomas/32/1806_2.png) [@huwlthomas](http://forum.companieshouse.gov.uk/u/huwlthomas)\
**Post date:** [January 20, 2025, 7:32am UTC](http://forum.companieshouse.gov.uk/t/how-to-definitively-identify-company-officers-across-snapshot-prod195-and-streaming-api-data/10740/1 "2025-01-20T07:32:22Z")

</div>

Hello Companies House community,

I’m working on a project that processes both the snapshot (Prod195) and streaming data feeds for company officers (directors/secretaries). My understanding is that the **Person\_Number** field is split such that the first 8 characters identify the person, and the subsequent 4 characters represent an increment of changes.

In practice, though, I’m seeing multiple distinct 8-character “person IDs” for what appears to be the same individual. Based on matching name, partial date of birth, nationality, address, and appointment dates (combined with concatenated data points to help identify the individual), we often find multiple **Person\_Number** values that almost certainly point to one real person—across different companies and sometimes even within the same company.

Additionally, **the same individual can have multiple records purely because they hold multiple appointment types** (e.g., director, secretary, etc.). It’s not always clear from the data whether a new record in the streaming updates corresponds to an existing individual with a new appointment type or if it represents an entirely different officer.

All of this makes it very difficult to maintain a deduplicated internal record of officers or to confidently update snapshot data with the streaming data, because there isn’t a stable, unique identifier that reliably ties the same person’s records together over time. Officers can also have multiple occupations, adding extra confusion.

**My questions** :

1. Is there an official or recommended way to definitively link a streaming update record to a snapshot record for the same individual, especially if multiple appointment types are involved?
2. Are there any best practices or data points we can rely on (beyond name, partial DOB, nationality, etc.) to consolidate records for a single person?
3. Has there been any discussion or plan to provide a truly unique officer identifier in the future?

Any guidance or references from Companies House or other developers who’ve handled this would be greatly appreciated.

Thank you!

---

<div class="post-metadata">

**Author:** ![voracityemail](http://forum.companieshouse.gov.uk/letter_avatar_proxy/v4/letter/v/b77776/32.png) [@voracityemail](http://forum.companieshouse.gov.uk/u/voracityemail)\
**Post date:** [January 20, 2025, 9:34am UTC](http://forum.companieshouse.gov.uk/t/how-to-definitively-identify-company-officers-across-snapshot-prod195-and-streaming-api-data/10740/2 "2025-01-20T09:34:16Z")

</div>

Not from Companies House and I can’t provide anything helpful - just to echo your issue is known and not new. Indeed, there have been such notes and queries pretty much since the inception of this API. From 2019 for example:

> [@The need for better identifiers - discuss!](https://forum.aws.chdev.org/t/the-need-for-better-identifiers-discuss/2150):
>
> This may be a matter for legislation before it can work, but the registry is badly in need of a unique identifier for officers (as there is for companies) to unify all the filings relating to each human. If you search, for example, for officers named as follows: You will get at least 91 different identifiers for that name, nearly all at the same address in E18 and all born in July 1982. It makes it very hard to see the extent of one individual’s directorships across the UK. If you make an ass…

As far as I’m aware similar issues apply both _within_ some other datasets (e.g. certainly PSCs) and _between_ all the “people” datasets - Officers (presumably “Officer appointments” - which a company Officers record just references - hence multiple “the same person” entries within a Company?), PSCs and Disqualified Officers.

Good luck.

---

<div class="post-metadata">

**Author:** ![voracityemail](http://forum.companieshouse.gov.uk/letter_avatar_proxy/v4/letter/v/b77776/32.png) [@voracityemail](http://forum.companieshouse.gov.uk/u/voracityemail)\
**Post date:** [January 20, 2025, 7:43pm UTC](http://forum.companieshouse.gov.uk/t/how-to-definitively-identify-company-officers-across-snapshot-prod195-and-streaming-api-data/10740/3 "2025-01-20T19:43:05Z")

</div>

Ah yes - the official line on data quality is [given on their “Service information” site](https://resources.companieshouse.gov.uk/serviceInformation.shtml#compInfo).
