How we work

The Data Processing Cookbook

How KEI turns a logger download into a discharge record, and why each step is taken. Every picture is drawn from a real processing session in the KEI Hydro Processor.

Drawn from one recorded session: Procter Creek's 5 August to 18 September 2026 download, processed on 8 October 2026. The numbers are the station record's own, worked out with the Hydro Processor's calculations.

Each sheet is one picture, then why the step is needed, what was done and the rule we follow.

The whole chain

What one download goes through

Five steps, always in this order. Each one changes the record a little, and each change has a reason.

01 of 12
One download, five stepsFive strips for Procter Creek, 5 August to 18 September 2026: the two pressures as imported, raw level after deletes, stage after offsets, stage final after drift, and discharge after the rating shift.THE WHOLE CHAINOne download, five steps: from two pressures to dischargeProcter Creek, 5 August to 18 September 2026, as it was processed on 8 October 2026. Each strip shows the same six weeksafter one more step. Strip 1 is every reading; strips 2 to 5 are hourly means.Visit, 5 AugVisit, 18 Sep94 kPa96 kPa98 kPaSensor in the creek (Abs pressure)Barometer (Baro pressure)1ImportTwo files: the level logger in thecreek, one reading every 5 minutes,and the barometer at Harrop Creek,one an hour.12,693 sensor readings0.08 m0.12 m0.16 mThree dips run off the scaleRaw levelRaw level before the deletes2Remove bad readingsDelete on the Pressure graph: thefirst and last sensor readings (bothover 2 kPa low), three barometerspikes, and the 23 sensor readingsaround each spike.8 deletes0.1 m0.2 m0.3 m0.4 m+247 mmMean of the first hour: 0.369 m(12 readings from 14:40, 0.367 to 0.375 m)Staff gauge reading, 5 Aug 14:00: 0.369 mRaw levelStage after offsetsStaff gauge reading3Stage offsetOffset drag on the Stage Offsetgraph: lift the whole data set untilits start meets the first staffgauge reading.+247 mm0.34 m0.36 m0.38 mMean of the last hour: 0.356 m(12 readings to 12:00, 0.354 to 0.358 m; before the drift, 0.344 m)Staff gauge reading, 15:25 (3 h 25 min later): 0.356 mStage before driftStage finalStaff gauge reading4Stage finalDrift on the Stage Final graph: thestart stays where it is and the endmoves up to the staff gauge readingof 18 Sep.0 to +12 mm50 L/s100 L/sMean of the first hour: 64.0 L/s(12 readings from 14:40, 58.8 to 76.3 L/s)Flow measurement, 5 Aug 14:00: 62.6 L/sMean of the last hour: 45.2 L/s(12 readings to 12:00, 41.9 to 47.6 L/s)Flow measurement, 15:44 (3 h 44 min later): 43.5 L/sDischarge before driftDischargeFlow measurement5DischargeDrift on Discharge, via the rating'spoint of zero flow. Raising thatpoint lowers the discharge, downclose to the two flow measurements.+6 mm to +3 mm10 Aug17 Aug24 Aug31 Aug7 Sep14 SepThe barometer file ends at 12:00 on 18 Sep, so raw level, stage and discharge stop there. The level logger ran on to 16:15.Procter Creek record as saved 8 Oct 2026, 15:27, and the two files as imported · the Hydro Processor's own chainKEI Data Processing Cookbook

Why it needs doing

A logger file holds pressure, not discharge. Raw level sat 247 mm under the staff gauge reading, and discharge first came out at 76.5 L/s against 62.6 L/s measured.

What was done

Imported two files, made 8 deletes on the Pressure graph, lifted the data set onto the staff gauge (+247 mm), set a drift on Stage Final (0 to +12 mm) and a drift on the rating (+6 to +3 mm).

The rule

Work down the chain in order: pressure, stage offset, stage final, discharge.

Before the import

Check the file before it goes in

A minute spent on the file name and both ends of the file saves an hour of untangling a bad import.

02 of 12
Read the file name, then check the file against itThe name of Procter Creek's level logger file taken apart into first day, last day, download time, clock offset, site and sensor, then three checks on the file: the first reading, the last reading and the step between readings. Below, the barometer file's name and the last day of both files.BEFORE THE IMPORTRead the file name, then check the file against itProcter Creek's level logger download of 5 August to 18 September 2026. The name says what should be in the file, sothe first row, the last row and the step between rows are checked against it.THE FILE NAME, TAKEN APARTyyyy-mm-dd-yyyy-mm-dd_hhmm-8_SiteName(Notes)KEI's template:2026-08-05-2026-09-18_1615-7_ProctorLL.csvOn screen, in the station's Sensor Data folder: the CSV and the raw logger fileClock offset from UTC−7 hours: station time is UTC−7SiteSensorLL = level logger, in the waterBL would be a baro loggerFirst day5 August 2026Last day18 September 2026Time of the download16:151The first reading2The last reading3Every step in betweenReadingnew dateAbs Pres, kPa12026-08-0514:3593.18322026-08-0514:4095.71332026-08-0514:4595.686Starts 5 Aug, 14:35The first day in the name.Readingnew dateAbs Pres, kPa12,6912026-09-1816:0596.0512,6922026-09-1816:1096.0512,6932026-09-1816:1593.664Ends 18 Sep, 16:15The last day and the download time inthe name.14:3514:405 min14:455 min14:505 min14:555 minThe first 5 readings, 5 Aug12,693 readings5 minutes apart, every one.None missing, none repeated:exactly what 44 days 1 h 40 min holds.The pressure in the first and the last row is low: 2.5 kPa and 2.4 kPa below the row beside it. Both readings are deleted on the Pressure graph after the import.THE SECOND FILE: THE BAROMETER2026-08-05-2026-09-18_1200-7_HarropMX2001.csvLast reading 12:001,057 readings, one an hour, none missing4 h 15 minfrom the barometer's last reading to the level logger's (12:00against 16:15). The two names already say so.51 level logger readings have no barometer, so the record has nostage after 12:00 on 18 Sep.Abs pressure (level logger)Baro pressure (Harrop)93 kPa94 kPa95 kPa96 kPa97 kPa06:0008:0010:0012:0014:0016:0018:00no barometer4 h 15 min12:0016:1518 September 2026, both files as importedLevel logger and barometer files as imported 8 Oct 2026 · Procter Creek record as saved 15:27KEI Data Processing Cookbook

Why it needs doing

The name promises 5 August to 18 September, downloaded at 16:15. If the file's first row, step or last row disagree, the dates are wrong or readings are missing.

What was done

Opened the file, read the first row (2026-08-05 14:35), saw the times step by five minutes, jumped to the last row (2026-09-18 16:15) and matched it to 1615-7 in the name.

The rule

Before importing, check the file's first row, step and last row against its name.

03 of 12
The logger's dates were right. The spreadsheet misread them.Three real time stamps from the Procter Creek level logger shown as its export file gives them (month/day/year) and as a spreadsheet set to year-month-day dates read them, a strip of the download's days showing which are misread, two crops of the spreadsheet  the session, and the check against an earlier download.BEFORE THE IMPORT · A WEIRD ONEThe logger's dates were right. The spreadsheet misread them.Procter Creek level logger (HOBO U20L), 5 August to 18 September 2026. The logger's export file gives each time astext, month/day/year. A spreadsheet set to year-month-day dates read the same text as year/month/day.THE TRUE TIMETHE LOGGER'S FILE SAYSTHE SPREADSHEET READSTHE CELL ENDS UP ASmonthyeardaymonthyearday5 Aug 2026, 14:35first reading of the download08/05/2602:35:00 PM0805a real month262008-05-26 14:35A wrong date, about 18 years early13 Aug 2026, 00:00first reading on the 13th08/13/2612:00:00 AM0813no month 132608/13/26 12:00:00 AMLeft as text: still the right time18 Sep 2026, 16:15last reading of the download09/18/2604:15:00 PM0918no month 182609/18/26 04:15:00 PMLeft as text: still the right timeTHE SAME RULE ON EVERY DAY OF THE DOWNLOADRead as a wrong date: 5,585 readingsLeft as text: 7,108 readings5August 20266789101112131415161718192021222324252627282930311September 2026234567891011121314151617185 to 12 Aug: read as26 May to 26 Dec 200813 to 31 Aug: left as text1 to 12 Sep: read as26 Jan to 26 Dec 200913 to 18 Sep:left as textFrom the 1st to the 12th, the day of the month can pass for a month. Each of those days lands on the 26th of a different month:one day apart on the logger, one month apart in the cell.ON SCREEN, 03:18: THE FIRST ROWSON SCREEN, 03:30: THE LAST ROWSTHE CHECKOrange box: the first reading, turned into a datein 2008. Navy box: the corrected "new date"column, the one imported as the Timestamp.Navy box: the last reading, still the logger's owntext and the right time. Text sits at the left of acell, a date at the right.All 18,497 rowsof an earlier download from this logger(31 Mar to 3 Jun 2026) fit the rule.That file still has both date columns:7,688 cells became wrong dates and10,809 stayed as text.Worked out from the files  the session.Procter Creek level logger files (HOBO U20L): 5 Aug to 18 Sep 2026 and 31 Mar to 3 Jun 2026KEI Data Processing Cookbook

Why it needs doing

The file's original date column read 2008-05-26 14:35 for a reading taken at 14:35 on 5 August 2026. Worked out afterwards: 5,585 of its 12,693 times had been misread.

What was done

Checked the corrected date column at the first and last rows, removed the misread column, and imported the corrected one as the Timestamp.

The rule

If a logger's dates look wrong, check how the file was opened before blaming the logger.

Import

Bring in the two pressures

The creek's logger and a barometer. The level cannot be worked out until both are in.

04 of 12
The importer guesses the columns. Check every guess.Two drawn tables of the Import wizard's column mapping for Procter Creek's level logger file and the Harrop barometer file, with the two guesses that were changed to Ignore, and a chart of the three pressure columns from 5 August to 18 September 2026.IMPORTThe importer guesses the columns. Check every guess.Procter Creek, the download of 5 August to 18 September 2026. Step 2 of the Import wizard, Column mapping, fills inwhat it thinks each column of a file is. Two files went in. On one of them, two guesses had to be changed.IMPORT WIZARD, STEP 2: COLUMN MAPPINGFile 1: Procter Creek's level loggerThe sensor in the water at Procter Creek.COLUMNSAMPLEMAP TOnew date2026-08-05 15:00TimestampAbs Pres, kPa …95.637 kPaAbs pressureTemp, °C …10.748 °CWater temp3 of 3 guesses right. Nothing to change.LEFT AS OFFERED, ON BOTH FILESSource timezoneUTC−7 (site standard)ResampleKeep native interval (every reading)Every reading goes in as logged: 5 minutes for file 1,1 hour for file 2.File 2: the barometer, from the logger at Harrop CreekThe same file also holds Harrop Creek's own sensor in the water.COLUMNSAMPLEMAP TO: PROPOSEDAS IMPORTEDTime Stamp (PDT)2026-08-05 15:00TimestampTimestampAbs. kPaHarrop Creek's sensor in the water99.402 kPaAbs pressureIgnoreBaro. kPa (calculated)air pressure: the one column Procter needs94.445 kPaBaro pressureBaro pressureDiff. kPaemptyIgnoreIgnoreWater TemperatureHarrop Creek's water, not Procter's11.250 °CWater tempIgnoreAir TemperatureemptyIgnoreIgnore2 of 6 guesses changed by hand, to Ignore.Went in: 1,057 barometer readingsTables redrawn from the wizard's screen. Samples: each column's value at 15:00 on 5 August 2026, the first time stamp both files have.WHY IT MATTERS: THE THREE PRESSURE COLUMNSHarrop Creek's sensor (file 2): set to IgnoreProcter Creek's sensor (file 1): Abs pressureBarometer (file 2): Baro pressure92 kPa94 kPa96 kPa98 kPa100 kPa102 kPa10 Aug17 Aug24 Aug31 Aug7 Sep14 Sep3.7 kPa aparton averageBoth files as imported, at the 1,054 hours they share. The three spikes are in both Harrop columns, at the same hours; the barometer's were deleted later.0.38 m of wateris what 3.7 kPa is worth (× 0.102 m perkPa). The wizard proposed Harrop Creek'ssensor as Procter Creek's Abs pressure.0.11 mis Procter Creek's Raw level over the samesix weeks (mean of the record). The gap ismore than 3 times that.Frozen copies of the two files as imported · Procter Creek record as saved 8 Oct 2026, 15:27KEI Data Processing Cookbook

Why it needs doing

The Harrop file holds Harrop Creek's own in-water sensor as well as the barometer. That sensor reads 3.7 kPa above Procter's: 0.38 m of water.

What was done

In Column mapping, set the barometer file's "Abs. kPa" and "Water Temperature" to "Ignore", kept "Baro pressure", and kept the logger's own time zone and every reading.

The rule

Read every MAP TO line before importing; bring in only the column you need.

05 of 12
Water level needs two pressures: the sensor's, minus the air'sA drawing of the sensor under water and the barometer in air; the sum worked for 27 August 2026 12:00; both pressures and raw level at Procter Creek from 5 August to 18 September 2026, with the last day enlarged to show sensor readings after the barometer file ends; two screen shots before and after the barometer import; and two hours showing 5-minute sensor readings against hourly barometer readings.RAW LEVELWater level needs two pressures: the sensor's, minus the air'sProcter Creek, 5 August to 18 September 2026. The level logger in the creek feels the water and the air pressing downon it. The air pressure for Procter comes from the barometer at Harrop Creek.WHAT EACH ONE FEELSairwaterThe sensor feelsair + waterLevel loggerin Procter CreekairThe barometer feelsair onlyBarometerat Harrop CreekIllustration, not to scale.THE SUM FOR ONE REAL READING: 27 AUG, 12:0095.419 kPaAbs pressuresensor in the creek: air + water−94.396 kPaBaro pressurebarometer at Harrop Creek: air only=1.023 kPaThe water alonestill as a pressure×0.102metres of water per kPathe Processor's own factor=0.104 mRaw leveldepth of water over the sensor, before any offset99% airis what the sensor feels.The water is the small partleft over, so bothpressures are needed.THE WHOLE DOWNLOAD, 5 AUG TO 18 SEP: THE GAP BETWEEN THE LINES IS THE WATERAbs pressure (sensor)Baro pressure (Harrop Creek)Raw level94 kPa95 kPa96 kPa97 kPa0.08 m0.10 m0.12 m0.14 m0.16 m10 Aug17 Aug24 Aug31 Aug7 Sep14 Sep10:0012:0014:0016:0027 Aug, 12:00: the gap is 1.023 kPa27 Aug, 12:00: 0.104 mno barometerafter 12:00no water levelfield readings, 15:25 to 16:0350 sensor readings, no water level18 Sep: the barometer file ends at 12:00, the sensorfile 4 h 15 min later, at 16:15. The visit's fieldreadings were taken after 12:00 too.Abs pressure and Raw level: hourly means of the 5-minute readings. Baro pressure: as logged.Bad readings already deleted.Every reading. The 16:15 sensor reading was deleted.Staff gauge readingFlow measurementON THE SCREEN: ONE FILE IN, THEN BOTH1Level logger file onlyBaro pressure stops on 5 Aug, so Rawlevel and stage stop there too.no level2Barometer file addedBoth pressures run on, and so doesthe level.first sensor reading,deleted laterTWO LOGGING INTERVALSSensor every 5 minutes, barometer every hour94.0 kPa94.5 kPa95.0 kPa95.5 kPa12:0013:0014:0012:25: 94.358 kParead off the line, not loggedAbs pressureBaro pressureread off the lineBetween two barometer readings the Processor reads the airpressure off the straight line joining them: 11 of every 12sensor readings get it that way. Barometer readings more than 6hours apart get no line, and no level.Procter Creek record as saved 8 Oct 2026, 15:27 · computed with the Hydro Processor's own chainKEI Data Processing Cookbook

Why it needs doing

The sensor feels air and water together: of 95.419 kPa, 94.396 kPa was air. With only the level logger file in, the new period had no stage at all.

What was done

Saw the sensor's pressure carry on alone past 5 August with no water level, imported the barometer file for the same period, and the raw level and stage appeared.

The rule

Import the barometer for the same period before judging the water level.

Pressure

Clean the pressure first

Everything downstream is worked out from the two pressures. Readings that are wrong because the sensor misbehaved, was out of the water or was being downloaded are deleted here, in the Absolute or the Barometric pressure, never in the stage: bad readings that are not real stage must never reach the stage.

06 of 12
One bad reading at each end of the downloadSensor and barometer pressure at Procter Creek on 5 August and 18 September 2026, every reading drawn as a dot. The first and the last sensor reading of the download sit 2.44 kPa and 2.34 kPa below the mean of the hour of readings beside them and were deleted, sensor pressure only. The Processor's delete box is shown with only Absolute pressure ticked.PRESSUREOne bad reading at each end. Delete that reading, from thatpressure, and nothing else.Procter Creek, the download of 5 August to 18 September 2026. Its first and its last sensor reading sit far below thereadings beside them. Rory deleted those two readings, from the sensor pressure only, and left the barometer alone.THE TWO ENDS OF THE DOWNLOADAbs pressure: the sensor in the creekBaro pressure: the barometerDeleted readingAs imported93 kPa94 kPa95 kPa96 kPa5 August 2026: the first reading of the download12:0014:0016:0018:0018 September 2026: the last reading of the download10:0012:0014:0016:0014:35: 93.18 kPa2.44 kPa below the mean of the next hour,worth 0.25 m of water level.Earlier record, hourlyThis download, every 5 minutesField readings on the record: 14:0016:15: 93.66 kPa2.34 kPa below the mean of the hour before,worth 0.24 m of water level.The barometer file ends at 12:00Field readings on the record: 15:25 to 16:03HOW IT WAS DONE IN THE PROCESSORThe Processor’s message after the import1Zoom in until the dots appearOn the Pressure graph, every readingbecomes a dot you can pick.2Select the one bad readingHold Shift and select it. Current Editsshows “1 reading”.3Delete, and tick only what is wrongClick Delete. Leave only “Absolutepressure” ticked: the sensor in thecreek. “Barometric pressure” staysunticked. Then Add.2 readingsdeleted here, from the sensor pressureonly: the first and the last of the12,693 in this download (5 Aug 14:35and 18 Sep 16:15).0 readingschanged in the barometer by these twodeletes.Both deleted readings stay in therecord, greyed out. Switch thedelete off and they come back.Procter Creek record as saved 8 Oct 2026, 15:27 · the Hydro Processor's own chainKEI Data Processing Cookbook

Why it needs doing

The download's first and last sensor readings sat 2.44 and 2.34 kPa below the hour of readings beside them: about 0.25 m of water level each.

What was done

Zoomed in on the Pressure graph until single readings showed, selected the one bad reading, and deleted it from the sensor's pressure only. Twice: 5 August 14:35 and 18 September 16:15.

The rule

Delete faulty, out-of-water and download readings in the pressures, never the stage.

Field readings

Bring in what was measured on site

The logger gives the shape of the record. The staff gauge and the flow measurement tie it to the creek.

07 of 12
Drop in the field sheet: the readings the record is tied toThe Hydro Processor's Add field sheet preview for Procter Creek, 18 September 2026, with three ticked records, and the same staff gauge readings and flow measurement shown on the stage record from June to September and on the visit day, where stage stops at 12:00.FIELD READINGSDrop in the field sheet: the readings the record is tied toProcter Creek, visit of 18 September 2026. The logger gives the shape of the record. The staff gauge readings and theflow measurement taken at the visit are the truth it is tied to.1Drag the visit's field sheet (the HTML file) onto Field Readings / Field Sheets2Check the previewA preview opens. Nothing is added yet.3 ticked rowsOnly ticked rows go into the record: here 2 staffgauge readings and 1 flow measurement.A time the Processor filled inThe sheet gave no time for the flow measurement.The preview put 15:44, half-way between the twostaff gauge readings, to be corrected from the flowsheet. It was added as 15:44.Entered byRory typed his own initials: he was doing the processing.3Click Add 3 records37 → 40records onthe panelThe Processor confirms it:THE SAME READINGS ON THE RECORDStage after offsetsStaff gauge readingFlow measurement0.35 m0.40 m0.45 m0.50 m0.55 m1 Jun1 Jul1 Aug1 Septhis download3 Jun, 17:000.470 m409 L/s5 Aug, 14:000.369 m62.6 L/s18 Sep0.356 m, twice43.5 L/sHourly means of the record as it stood when the sheet was dropped in.0.345 m0.350 m0.355 m09:0010:0011:0012:0013:0014:0015:0016:00mean of the last hourof record: 0.344 m12 mm lower3 h 25 min with no stage0.356 m ±1 mmat 15:25 and 16:03flow measurement, 15:44The visit day, 18 Sep, close upEvery 5-minute reading of stage, and the visit's readings.The barometer file ends at 12:00, so stage stops there,3 h 25 min before the first staff gauge reading.The sensor's own readings run on to 16:10.WHAT EACH READING IS FOR, IN THE STEPS THAT FOLLOWStaff gauge reading at the start of a data setsets the OffsetHere: 0.369 m on 5 Aug at 14:00Staff gauge reading at the end of a data setsets the DriftHere: 0.356 m on 18 Sep at 15:25 and 16:03Flow measurementsets the rating shiftHere: 62.6 L/s on 5 Aug and 43.5 L/s on 18 SepProcter Creek record as saved 8 Oct 2026, 15:05 and 15:27 · the Hydro Processor's own chainKEI Data Processing Cookbook

Why it needs doing

The logger gives the shape of the record; the visit's readings tie it down: staff gauge 0.356 m, twice, and a 43.5 L/s flow measurement on 18 September 2026.

What was done

Dragged the visit's digital field sheet onto Field Readings, checked the preview and added its three records: two staff gauge readings and one flow measurement.

The rule

Add the visit's field readings before you set an offset, a drift or a rating shift.

Stage offset

Put the level on the staff gauge's scale

One constant per data set, matched to the first staff gauge reading. Nothing else happens in this step.

08 of 12
What a stage offset isAn illustration of a creek in side view with a staff gauge and a level logger. Raw level, the water over the sensor, plus the Offset, the height of the sensor above the gauge's zero, equals stage on the staff gauge. Real numbers from Procter Creek on 5 August 2026, with a small plot of raw level and stage after offsets.STAGE OFFSET · THE IDEAThe sensor measures the water above itself. The offset puts thaton the staff gauge's scale.Raw level is the depth of water the level logger reads above itself. Stage is the water's height on the staff gauge,the fixed scale the rating curve uses. While the logger stays put, the two differ by one constant: the Offset.Illustration, not to scale. The numbers are real: Procter Creek, 5 August 2026.Water surface00.10.20.30.40.5Staff gaugemarked in metresGauge zeroLevel loggerfixed below the water surfaceSensorStage after offsets0.3691 mgauge zero up to the watersurfaceRaw level0.1217 mwater over the sensorOffset0.2474 mgauge zero up to thesensorOne value for thewhole data set.Staff gauge reading0.369 m ±0.001 m at 14:00THE SUMRaw level0.1217 m+ Offset0.2474 m= Stage after offsets0.3691 mStaff gauge reading0.369 m0.1 mm apartInside the ±1 mm the staff gauge is read to.Raw level is the mean of the first hour of the new5-minute data, 14:40 to 15:35. Single readings ranfrom 0.119 m to 0.128 m.THE SAME THING IN THE RECORDRaw levelStage after offsetsStaff gauge reading0.0 m0.1 m0.2 m0.3 m0.4 m5 Aug 12:006 Aug12:007 Aug+247.4 mmOffset drag lifts the whole data set untilits start meets the staff gauge reading.Each download gets its own offsetTwo data sets here, two offsets.244.4 mm3 Jun to 5 Aug247.4 mm5 Aug to 18 Sep (this one)Procter Creek record as saved 8 Oct 2026, 15:27 · computed with the Hydro Processor's own chainKEI Data Processing Cookbook

Why it needs doing

The logger only reads the water above itself: 0.1217 m on 5 August, when the staff gauge read 0.369 m. The rating curve works on the staff gauge's scale.

What was done

Selected the new data set in the Stage Offset graph and dragged it up until its start met the staff gauge reading: +247.4 mm.

The rule

In Stage Offset, apply one offset to the data set and nothing else.

09 of 12
Offset each data set to its first staff gauge reading. Leave the end for drift.Raw level and stage after offsets at Procter Creek, June to September 2026, with the two data sets Rory offset marked, three zooms on the staff gauge readings at the start of each data set and at the end of the second, and three crops of the Processor's screen.STAGE OFFSETOffset each data set to its first staff gauge reading.Leave the end for drift.Procter Creek, June to September 2026. A data set is the data between two site visits: one download. In the StageOffset graph each one is selected, then lifted by a single offset.TWO DATA SETS, ONE OFFSET EACHRaw levelStage after offsetsStaff gauge reading0.1 m0.2 m0.3 m0.4 m0.5 m1 Jun15 Jun1 Jul15 Jul1 Aug15 Aug1 Sep15 SepData set 13 Jun 18:00 to 5 Aug 13:00 · 1508 readings selectedData set 25 Aug 14:00 to 18 Sep 16:15 · 12694 readings selected+244.4 mmOffset drag, until the startmeets the 3 Jun staff gaugereading, 0.470 m+247.4 mmOffset drag, until the startmeets the 5 Aug staff gaugereading, 0.369 mABCThe end is not matched12 mm under the 18 Sep reading: left for DriftLong view: hourly means. The zooms below show every reading.ZOOM IN: EVERY READINGStage after offsetsStaff gauge readingMean of the hourEach zoom spans 40 mm of stage0.45 m0.46 m0.47 m12:0015:0018:0021:00AStart of data set 1, 3 Jun3 mm belowfirst reading, 18:00data set 10.36 m0.37 m0.38 m12:0014:0016:00BStart of data set 2, 5 AugLess than 1 mm apartmean of the first hourdata set 2data set 10.34 m0.35 m0.36 m10:0012:0014:0016:00CEnd of data set 2, 18 Sep12 mm belowleft for Driftrecord ends 12:00read 15:25 and 16:03data set 2Hourly readings here. Data set 1 startsat 18:00, an hour after the staff gaugereading (0.470 m).First hour of 5-minute readings, 14:40 to15:35: 0.369 m on average. Staff gauge,on the record at 14:00: 0.369 m.Last hour of record: 0.344 m on average.Staff gauge, 3 h 25 min later: 0.356 m.ON THE PROCESSOR'S SCREEN: SELECT THE WHOLE DATA SET, THEN DRAG1First drag: 12686 readings2Edge pulled back: 12694 readings3Offset drag: +247.4 mmleft outThe counter is 8 readings short: the start ofthe data set is outside the selection edge.Zoom in on the edge and pull the handle untilnothing is left out.Drag up until the start sits on the staff gaugereading, then Save offset.Procter Creek record as saved 8 Oct 2026, 15:27 · computed with the Hydro Processor's own chainKEI Data Processing Cookbook

Why it needs doing

Raw level sits about a quarter of a metre under the staff gauge, and each data set needs its own offset: +244.4 mm for one, +247.4 mm for the next.

What was done

Selected each data set edge to edge (1,508 readings, then 12,694) and lifted it until its start met its first staff gauge reading.

The rule

Offset to the first staff gauge reading and leave the end for drift.

Stage final

Correct what wandered

If the start fits the staff gauge and the end does not, the sensor has drifted. The correction is drawn so anyone can see it.

10 of 12
The start fits and the end sits 12 mm low: that is driftStage before drift and Stage final at Procter Creek, 5 August to 18 September 2026, fanning apart from nothing to 12 mm; the drift as a straight ramp; a close-up of the end against the staff gauge readings; and the Processor's drift box.STAGE FINALThe start fits and the end sits 12 mm low: that is driftProcter Creek, 5 August to 18 September 2026. The offset pinned the start of the data set to the staff gauge. The endis checked in Stage Final, and a Drift takes up the miss: nothing at the start, growing to +12 mm at the end.THE WHOLE DATA SETStage before driftStage finalStaff gauge readingDriftHourly means of the 5-minute readingsVisit, 5 AugVisit, 18 Sep0.33 m0.35 m0.37 m0.39 m0.41 mStart: fitsThe first hour of 5-minute readings averages 0.369 m. Staff gauge: 0.369 m.12 mmEnd: does not fitStage before drift stops 12 mm below the staff gauge. Stage final meets it.0 mm+12 mmThe Drift, added to every reading0 mm at 5 Aug 14:00, +12 mm at 18 Sep 16:15, a straight line between.10 Aug17 Aug24 Aug31 Aug7 Sep14 Sep21 SepIN THE PROCESSOR: THE “UNSAVED DRIFT” BOX1Click DriftOn the Stage Final graph, with the data set selected.2Leave Start (mm) at 0. Nudge End (mm) with +1until Stage final ends on the staff gauge reading. Here: 12 mm.3Save driftStage before drift stays on the graph to show the change.THE END, CLOSE UP: 18 SEPTEMBERStage before driftStage finalStaff gauge reading5-minute readings0.340 m0.345 m0.350 m0.355 m0.360 m0.365 m0.370 m07:0008:0009:0010:0011:0012:0013:0014:0015:0016:00After the drift: 0.356 mBefore the drift: 0.344 m12 mm lowno recordStaff gauge: 0.356 m ±0.001 mread at 15:25 and 16:03last hour of recordThe record stops at 12:00, where the barometer file ends, after falling 10 mm infour hours. The staff gauge was read 3 h 25 min and 4 h 3 min later. Thick lines:mean of the last hour of record, carried across as dashes.Procter Creek record as saved 8 Oct 2026, 15:27 · computed with the Hydro Processor's own chainKEI Data Processing Cookbook

Why it needs doing

The offset made the start fit the staff gauge, but the last hour of record averaged 0.344 m against a staff gauge reading of 0.356 m: 12 mm low.

What was done

On the Stage Final graph, with the data set selected, left the start at 0 and moved the end up 12 mm onto the staff gauge reading.

The rule

Fit the start with the offset; fix a miss at the end with Drift.

Discharge

Hold the curve to the flow measurements

The rating curve turns stage into discharge. The flow measurements say whether it still fits.

11 of 12
The rating curve gave more flow than was measured, so the curve was moved to meet the flow measurementsProcter Creek, 3 June to 18 September 2026: the rating curve close up at two flow measurements with its point of zero flow moved, discharge before and after the drift with the drift in millimetres under it, the Processor's drift box, and the difference left at each of three flow measurements.DISCHARGEThe rating curve gave more flow than was measured, so the curvewas moved to meet the flow measurementsProcter Creek, 3 June to 18 September 2026. The rating curve turns stage into discharge. Where a flow measurementdisagrees, the curve's point of zero flow is moved a few millimetres, drifting from one measurement to the next.THE RATING CURVE, CLOSE UPCurve as saved (SDR 1)Point of zero flow movedFlow measurementReading in the hour compared5 August, the start of this download: the curve read high0.35 m0.36 m0.37 m0.38 m0.39 m40 L/s60 L/s80 L/s100 L/sPoint of zero flow moved up 6 mmCurve as savedFlow measurement62.6 L/s, 5 Aug 14:00Mean stage: 0.369 mDischarge64.0 L/sDischarge before drift76.5 L/s12.6 L/slessStageDischarge3 June: the other way0.46 m0.47 m0.48 m380 L/s400 L/s420 L/s440 L/sPoint of zero flowmoved down 3 mm12.7 L/s moreAt 18:00: 0.467 mFlow measurement409 L/s, 3 Jun 17:00DischargeMoving the point of zero flow uplowers the discharge.Moving it down raises the discharge.Large dots: the mean of the first hour of 5-minute readings, 14:40 to 15:35 on 5 Aug. Small dots: the readings themselves.SDR 1 as saved: Q = 8.824 (h − 0.31)^1.679, with Q in m³/s and the stage h in metres.DISCHARGE, HOURLY MEANSDischarge before driftDischargeFlow measurement50 L/s100 L/s200 L/s400 L/s3 Jun: 409 L/s5 Aug: 62.6 L/s18 Sep: 43.5 L/sEarlier data set: one reading an hourThis download: a reading every 5 minutesBefore drift: above the flow measurement at each endLog scale: each gridline is double the one belowDRIFT ON THE POINT OF ZERO FLOW (THE RATING SHIFT)−3 mm0 mm+3 mm+6 mm−3 mm+5 mm+6 mm+3 mmAbove 0: moved up, discharge loweredBelow 0: moved down, discharge raised1 Jun8 Jun15 Jun22 Jun29 Jun6 Jul13 Jul20 Jul27 Jul3 Aug10 Aug17 Aug24 Aug31 Aug7 Sep14 SepHOW IT IS ENTEREDDrift, on the Discharge graph. Each click of +1 movesthe point of zero flow up one millimetre. Start +6 mmat 5 Aug, End +3 mm at 18 Sep.HOW CLOSE IT GOTFlow measurementDifference from the measurementStill differs by−10%+10%+20%0%3 Jun, 17:00: 409 L/sRecord: the 18:00 reading (onereading an hour, none at 17:00).−1.5 L/s (−0.4%)was −14.3 L/s (−3.5%)5 Aug, 14:00: 62.6 L/sRecord: mean of the first hour of5-minute readings, 14:40 to 15:35.+1.4 L/s (+2.2%)was +13.9 L/s (+22.3%)18 Sep, 15:44: 43.5 L/sRecord: mean of its last hour,11:05 to 12:00.+1.7 L/s (+3.9%)was +7.1 L/s (+16.3%)Discharge before driftDischargespread of the single Discharge readings in that hourThe record ends at 12:00 on 18 Sep. The flow measurement was taken at 15:44, 3 h 44 min later.Procter Creek record as saved 8 Oct 2026, 15:27 · computed with the Hydro Processor's own chainKEI Data Processing Cookbook

Why it needs doing

Discharge before drift (hour means) read 76.5 L/s against 62.6 L/s measured on 5 August, and 50.6 against 43.5 L/s on 18 September: the curve gave too much flow.

What was done

Moved the rating's point of zero flow up 6 mm at 5 August, easing to 3 mm at 18 September; and -3 mm to +5 mm for the data set before.

The rule

To bring the discharge down, move the point of zero flow up.

Rules

The rules so far

One line from each sheet. They will be added to as more sites are recorded.

12 of 12
11 rules from one processing sessionThe rule from each sheet of the cookbook.THE RULES SO FAR11 rules from one processing sessionOne rule from each sheet above, in the order the work is done.01THE WHOLE CHAINWork down the chain in order: pressure, stageoffset, stage final, discharge.02BEFORE THE IMPORTBefore importing, check the file's first row,step and last row against its name.03BEFORE THE IMPORTIf a logger's dates look wrong, check how thefile was opened before blaming the logger.04IMPORTRead every MAP TO line before importing; bringin only the column you need.05IMPORTImport the barometer for the same period beforejudging the water level.06PRESSUREDelete faulty, out-of-water and downloadreadings in the pressures, never the stage.07FIELD READINGSAdd the visit's field readings before you set anoffset, a drift or a rating shift.08STAGE OFFSETIn Stage Offset, apply one offset to the dataset and nothing else.09STAGE OFFSETOffset to the first staff gauge reading andleave the end for drift.10STAGE FINALFit the start with the offset; fix a miss at theend with Drift.11DISCHARGETo bring the discharge down, move the point ofzero flow up.Rules as worded on this page's sheetsKEI Data Processing Cookbook