Sign in

Blog · Data quality and reconciliation · Oil and gas services

Operator name mapping: the unglamorous work behind basin coverage

Why an oilfield services company's coverage numbers depend on a mapping table from every operator name in every source to one identifier: subsidiaries, joint ventures and abbreviations, the unmapped-rig count that says how complete the table is, and how to maintain it as operators merge and rename.

The short answerBasin coverage is a join between your job tickets and a rig activity file, and the join fails wherever the same operator has different names in the two sources. Build a mapping table from every operator name in every source to one identifier, including subsidiaries, joint ventures and abbreviations, and report the rigs whose operator did not map, because those are active rigs nobody is measuring coverage against. Maintain the table as operators merge, and date every change.

Every oilfield services coverage report rests on one join: your tickets say you worked for "Pioneer Natural Resources", the rig file says the rig belongs to "PIONEER NAT RES USA INC", and nothing matches. Until a mapping table says the two are one operator, the basin coverage figure is wrong by every rig that failed to join. This guide sets out the table and the discipline around it.

Why the join fails

In your tickets In the rig file Same operator?
Pioneer Natural Resources PIONEER NAT RES USA INC Yes
Diamondback Diamondback Energy Inc Yes
Endeavor Diamondback Energy Inc Yes, after the 2024 acquisition
XYZ JV XYZ Operating LLC Yes, the operating partner
Continental Continental Resources Yes
Continental Continental Intermodal No, a different company

Names abbreviate, entities merge, joint ventures operate under a partner's name, and two unrelated companies share a word. No string match survives this. A maintained table does.

The mapping table

Source Name as it appears Operator ID Effective from Note
Tickets Pioneer Natural Resources OP-0117
Rig file PIONEER NAT RES USA INC OP-0117
Tickets Endeavor OP-0042 2024-09-01 Acquired by Diamondback
Rig file XYZ Operating LLC OP-0210 JV, operating partner

One row per name per source, mapped to one identifier, dated where the mapping changed.

The report line that keeps it honest

Every month, the coverage report shows, per basin:

Unmapped rigs = active rigs whose operator name has no row in the table

Those rigs are active and invisible. When the count is high, the coverage figure is understated by an unknown amount. When it is low, the coverage figure can be trusted. The count is also the maintenance queue: each unmapped name is a row to add.

The roll-up with mapping applied

  1. Map every ticket and every rig to an operator identifier.
  2. Report unmapped tickets and unmapped rigs by basin.
  3. Compute coverage on the mapped set.
  4. Assert that mapped ticket revenue plus unmapped ticket revenue equals billed revenue.

billed revenue = mapped tickets + unmapped tickets

Unmapped ticket revenue is usually tiny and unmapped rigs are usually not, because the rig file has more operators than you have customers. That asymmetry is the point: the rigs you cannot map are the operators you have never worked for.

A worked month

Permian, this month.

Rigs Operators
Active in the rig file 312 68
Mapped 289 51
Unmapped 23 17
Served by you 118 22

Coverage on the mapped set: 118 of 289 rigs, 41 percent. The 23 unmapped rigs across 17 operators are the maintenance queue, and several of the 17 are operators you have never quoted, which is a sales list as well as a data task.

Where it goes wrong

String matching in place of a table. Works for a quarter, then a merger. The table is the method.

Changes without dates. Endeavor's tickets from before the acquisition should map to Endeavor for historical coverage and to Diamondback after. The date makes both right.

Unmapped rigs dropped. Coverage looks better and the report is wrong by exactly the dropped rigs. Show the count.

Joint ventures split. A JV mapped to every partner appears under several operators and inflates operator coverage. Map to the operating partner.

Fifteen minutes a month

With the table versioned and the unmapped count on the report, maintenance is the new names each month, and the basin coverage figure is one the regional director can quote. Covirage keeps the mapping and reports the unmapped rigs on every file, inside the company's tenant on an enterprise deployment. The oil and gas services page describes the setup, and the basin coverage guide covers the measures the mapping makes possible.

Questions people ask

How do joint ventures map?

To the operating partner, the one that awards the work. The non-operating partners are recorded as attributes so the relationship is visible, but the rig and the revenue sit under one operator in the roll-up.

How complete does the mapping need to be?

Complete enough that unmapped rigs are a small share of active rigs in every basin you care about. The unmapped count on the report is the measure; below five percent of active rigs is usually enough to trust the coverage figure.

Who maintains it?

Sales operations, with the mapping table as a versioned file. Every rename, merger and new subsidiary is a dated row. The report flags new unmapped names each month so the maintenance is a fifteen-minute task rather than a quarterly project.