120Water · Sample Manager

Turning every legal sampling rule into a task someone owns.

I led UX from zero to one.

The Sample Manager prototype on a dark laptop: the dashboard with a daily task brief of overdue, due soon and upcoming tasks, and a list of requirement windows
PrototypeMy rebuild of the live product, with demo data. Not a 120Water release.Try it live

Business impact

15

organizations live, in 18 US states.

At a glance

Role
UX Consultant
Timeline
6 months of work, then a year of real use
Status
Live
Original engagement work
Made for 120Water.
Portfolio reconstruction
My rebuild, with demo data.

More water systems miss a test than break a health standard.

  • 20%missed a required test or report
  • 4%broke a health-based standard

Source: EPA, 2023 (opens in a new tab)

Low-income rural systems have more health violations.

PNAS, 2018 (opens in a new tab)

81% of water systems serve 3,300 people or fewer.

CRS, 2024 (opens in a new tab)

Sources and caveats

Utilities must test their water on a legal schedule, and one missed test is a violation.

In 2023, 20 percent of US public water systems missed a required test or report, and 4 percent broke a health-based standard (EPA, 2023 National Public Water Systems Compliance Report).

Fixing a health violation can mean new equipment. Avoiding a missed test takes a schedule that tells the right person what is due.

The PNAS study (Allaire, Wu and Lall, 2018) covered 17,900 community water systems from 1982 to 2015 and found that health-based violations were more common in rural areas, and especially high in low-income rural areas. It counted health-based violations only, because monitoring and reporting data were too poor to compare.

81 percent of community water systems serve 3,300 people or fewer (Congressional Research Service, 2024).

One rule can mean 400 tasks a year.

Each task has one owner.

400sample tasks a year from one example rule
One example rule from the state: 10 bacteria samples a month from October to May and 80 a month from June to September. That is 400 sample tasks in a year, each a dot on the chart.
  1. Click Year The whole year, built from the rules.
  2. Click April Each month opens as a calendar.
  3. Click a task See its status, owner and due date.

Live

The rule, step by step

A state rule says what to sample, where and how often. Sample Manager turns it into a year of tasks, each with one owner.

  1. 01

    The state's rule

    What, where, how often.

  2. 02

    Sampling period

    One window of that rule.

  3. 03

    Task

    One sample, one owner, seven stages.

The example rule: 10 bacteria samples a month from October to May and 80 a month from June to September. That is 400 sample tasks in a year.

Try the whole rebuild.

  1. Start with the daily brief Counted from today: 3 overdue, 2 due soon, 5 coming up.
  2. Requirement windows What opens next, from Mar 23 to Apr 1.
  3. March progress 60 of 200 samples collected. It needs 12 a day to finish.
  4. The calendar Arsenic Well Sample A3 has been overdue since March 4.
  5. Click Review overdue tasks It opens the task list, already filtered.
  6. Click Arsenic Well Sample A3 See its stage and due date.
  7. Click View in schedule The same task, on the calendar.

Live prototypeDemo data. Use it freely.Open full prototype (opens in a new tab)

Portfolio reconstructionDemo data. March’s plan is 200 samples, 60 collected. The task list shows 20 tasks.

A year of real use rewrote three rules.

The first version followed the spec.

Original engagement work

  1. Counts followed the calendar month.

    See it live: Counts followed the calendar month.
    Saw

    Task counts were confusing and wrong.

    Did

    Counts now run from today.

    Still open

    Not measured yet, so I can’t say it helped.

  2. Finished tasks stayed flagged overdue.

    See it live: Finished tasks stayed flagged overdue.
    Saw

    Done meant the state received the result.

    Did

    Admins pick the stage that counts as done.

    Still open

    Also not measured yet.

  3. Manual lab import was the top gap.

    See it live: Manual lab import was the top gap.
    Saw

    It was the top gap in 9 sales demos. We probably would not be able to move forward without this step.UX research, on the PDF compare panel

    Did

    Staff upload the lab’s PDF and check what the system reads.

    Still open

    The upload isn’t built here. The success measures are only targets.

Count from today

AssumedTask counts follow the calendar month.
NowCount from today.
  1. Pick a team member It recounts for that person, from today.

Live

Admins pick where done starts

AssumedDone means the state received the result.
NowAdmins pick the done stage.
  1. Click Received The first version: done meant the state received the result.
  2. Click Sent to Lab Admins pick the done stage. Finished work stops showing as overdue.

Live

Staff upload lab results

AssumedLabs send results by API or file upload.
NowStaff upload the PDF themselves.
  1. Click Import lab results Staff upload the lab’s PDF. The upload isn’t built here.
  2. Click a result See its sample number, analyte and status.
  3. Click × Back to the list. Looking changes nothing.

Live

Targets, not results

  • 18 to 100+views in 30 days
  • 40%self-serve uploads
  • 0imports needing staff
  • 99%accuracy on known formats
The targets, defined

Assumed: labs send results by API or file upload. Utilities get results in without waiting for a lab integration. The same principle as Predictive Modeling: the system suggests, a person decides.

Targets, not results: results page views per 30 days, from 18 to 100+; 40% of accounts on self-serve lab upload 90 days after launch; 0 lab imports needing staff 60 days after full launch; extraction accuracy on known formats 99%, and 95% on new formats.

Two layers of settings, and a check before every send.

Account rules, then personal choices

  1. Click the switch An admin turns this reminder off for everyone.
  2. It now reads Disabled by admin People can’t turn on what the admin turned off.
  3. Click the switch Only you unsubscribe. Everyone else keeps it.

Live

Every reminder checks its task before it sends

Three reminder emails are queued. Before each one sends it checks whether its task is still open. Two are, so they send. One task was finished in the meantime, so that email is skipped.
More on reminders

An admin sets what the account sends. Each person picks what they get, but can’t turn on what the admin turned off.

Seven days out means different things for monthly and annual samples.

  • Monthly sample7 days is about a quarter of the cycle
  • Annual sample7 days is about 2%

What I’d do differently.

  1. A better design that doesn’t fit engineering’s schedule never ships.

    Next timeAsk engineering how long each option takes to build.

  2. With no agreed measure, I can’t say what the work saved.

    Next timeWrite the success measure into the brief.

More on each

I pushed UX improvements hard and didn’t weigh how long each one would take engineering to build. Instead: ask engineering for the handoff cost of each option before I recommend one.

The facilities brief had no success measures. I proposed them only after the work shipped, so I can’t say whether those fixes saved anyone time. Instead: write the success measure into the brief before I design anything.

Live, and still changing.

On-time completion isn’t measured yet.

What we know so far

Live with 15 organizations in 18 states. The first facility fixes shipped in March and April 2026. We haven’t measured outcomes like on-time completion yet.

How I worked.

I worked from12 specs and requirementsa year of usage data9 sales demosUX research

These screens are my rebuild. 120Water owns the live product’s designs.

Who I worked with
  • Atharva Dnyanmote: UX Consultant, led UX 0-to-1.
  • Jon Ben-Haim: VP Product Strategy, product lead.
  • Julia Doyle: Product lead, email notifications.
  • Engineering leads by feature: Alecx Moritz and Dave Mason (email notifications), Ellie Leppert (sampling data) and David Sutton (lab result import).

Who made which call.

  1. My call

    Rule-based schedule,Count from today,Done stage,PDF upload,Email layers,Reminder check,Success measures

More calls, and why
  • My callBuild the schedule from each legal rule: rule, then sampling period, then task. One rule can mean 400 tasks a year.
  • My callCount tasks from today, not by calendar month. Month-based counts were confusing and wrong in real use.
  • My callLet admins choose the stage where a task counts as done. Finished work kept showing as overdue.
  • My callLet staff upload the lab’s PDF and check each value side by side. Manual lab import was the top gap in 9 sales demos.
  • My callTwo layers of email settings: the account’s rules, then personal choices. Admins decide what the account sends. People tune what they get.
  • My callEvery reminder re-checks its task before it sends. A reminder about finished work teaches people to ignore reminders.
  • My callPropose success measures for the facilities work, which had none. Searches and round trips show whether a page saves time.