Daily Production
Daily Production collects the allocated and measured rates and pressures alongside artificial lift operating parameters for a well. If daily rates are from a metered source (multiphase flow meter), allocated rate data should be supplied in the Allocation table.
If the well was not flowing for 24 hours on a given day, the number of downtime hours and the code/reason should be supplied.
Daily production is related to the well, not the wellbore. The uwi property from Well is used as the primary key for daily production records, as systems of record for well construction are typically different than allocation systems.
The unique constraint for daily production is uwi + date.
Variable | Data Type | Unit of Measure | Is Nullable? | Default Value | Description |
---|---|---|---|---|---|
uwi | String | - | No | - | Unique Well Identifier |
date | Datetime Offset | - | No | - | Datetime offset (with timezone) in ISO 8601 format. Example: 2022-09-27T16:28:37+0000 |
oilRate | Double | bbl/d | No | 0.0 | Oil Flow Rate |
gasRate | Double | Mscf/d | No | 0.0 | Formation Gas Flow Rate (this should not include any injected gas) |
waterRate | Double | bbl/d | No | 0.0 | Water Flow Rate |
tubingPressure | Double | psig | No | 0.0 | Tubing / Wellhead Pressure |
casingPressure | Double | psig | No | 0.0 | Casing Pressure |
linePressure | Double | psig | Yes | - | Line pressure (downstream of choke) |
isAnnularFlow | Boolean | - | Yes | False | Whether the well is producing from the annulus instead of tubing |
choke | Integer | 1/64ths | Yes | - | Choke Setting |
wellheadTemperature | Double | degF | Yes | 80.0 | Temperature at the Wellhead |
gasLiftInjectionRate | Double | Mscf/d | Yes, but required for Gas Lift Wells | - | Gas Injection Rate (For Gas Lift Wells) |
gaugePressure | Double | psig | Yes | - | Downhole Gauge Pressure |
gaugeTemperature | Double | degF | Yes | - | Downhole Gauge Temperature |
espFrequency | Double | Hz | Yes, but required for ESP Wells | - | ESP Frequency (For ESP Wells) |
espIntakePressure | Double | psig | Yes, but required for ESP Wells | - | ESP Intake Pressure (For ESP Wells) |
espAmps | Double | Amperes | Yes | - | ESP Current (For ESP Wells) |
espVolts | Double | Volts | Yes | - | ESP Voltage (For ESP Wells) |
espDischargePressure | Double | psig | Yes | - | ESP Discharge Pressure (For ESP Wells) |
espMotorTemperature | Double | degF | Yes | - | ESP Motor Temperature (For ESP Wells) |
espVibration | Double | g (gravity) | Yes | - | ESP Vibration (For ESP Wells) |
srpStrokesPerMin | Double | spm | Yes, but required for Rod Pump Wells | - | Strokes Per Minute (For Rod Pump Wells) |
srpIntakePressure | Double | psig | Yes, but required for Rod Pump Wells |  | Rod Intake Pressure |
srpFluidLoad | Double | lbf | Yes, but required for Rod Pump Wells |  | Fluid Load on the rod pump |
srpFillage | Double | % | Yes, but required for Rod Pump Wells |  | Sucker Rod Pump Fillage |
downtimeHours | Double | hrs | No | 0.0 | Downtime Hours |
downtimeCode | String | - | Yes | - | Coded Downtime Reason |
waterInjectionRate | Double | bbl/d | Yes | - | Water Injection Rate (For Water Injection Wells) |
gasInjectionRate | Double | Mscf/d | Yes | - | Gas Injection Rate (For Gas Injection Wells) |
pcpSpeed | Double | rpm | Yes | - | PCP speed (for PCP wells) |
pcpIntakePressure | Double | psig | Yes | - | PCP intake pressure (for PCP wells) |
pcpDischargePressure | Double | psig | Yes | - | PCP discharge pressure (for PCP wells) |
Daily Production Notes
A well must exist in the Well table before daily production can be added for that well
Each well must have at least one daily production record or it will fail a data integrity check. If a well fails a data integrity check values will not get computed for that well.
The Daily Production API will accept any value that has the correct data type for its respective field. If a value is sent through the API that is considered bad data, the modeling engine will throw errors and not compute the model for that particular well
When deleting a range of Daily Production records, the records for the start and end date provided will also be deleted
Artificial Lift Notes
Daily values for artificial lift are optional depending on the lift type specified in the main wellbore (if any). For natural flowing wells, all artificial lift values will be NULL
Downtime Notes
Downtime hours and code will typically come from a hydrocarbon accounting system. These values are optional. If supplied, they will be used to identify the flowing status of a well on any given production day.
For example:
- If downtimeHours = 24 - The well is
- If downtimeHours is not supplied - Flowing status will be assumed using choke where 0 = the well is
- If downtimeHours and choke are not supplied - If primaryFluid = Oil: The oilRate will be used where 0 = the well is
There is a limit of 255 characters for Downtime codes
Condition | Response |
---|---|
uwi is NULL or Empty | Record Rejected |
uwi does not exist | Record Rejected |
If ANY non-nullable field is NULL | Record Rejected |
If liftType = ESP AND required ESP field(s) missing | Record Rejected |
If liftType = Gas Lift AND required Gas Lift field(s) missing | Record Rejected |
If liftType = Rod Pump AND required Rod Pump field(s) missing | Record Rejected |
downtimeCode > 255 characters | Record Rejected |