Skip to main content

Building & scaling an online EBT program from first principles

The author led efforts to accept EBT payment at Instacart.

In March 2020, humanity got a wake-up call. 

COVID-19 hit like a system-wide failure—an external shock that exposed brittle infrastructure in every sector, including something as basic and vital as food access.

Now, from a first-principles perspective, access to food is a non-negotiable requirement for human survival. The Supplemental Nutrition Assistance Program (SNAP), or EBT, is a national system built to fulfill that need. 

But until 2020, EBT was locked in the physical world—swipe cards, point-of-sale terminals, in-person stores. There was almost zero online integration. That’s not a bug. That’s a systemic design flaw.

When the pandemic forced people indoors, we weren’t just facing a health crisis. We were facing a digital access crisis for millions. The question became how do you digitize a legacy, physically-bound benefits infrastructure and scale it nationwide—in four months?

That’s the challenge my former team at Instacart took on. From a physics perspective, you’d say we were working against time, bureaucracy, and legacy architecture. From a systems design standpoint, it meant deconstructing the old assumptions fast.

Step 1: Break it down to the physics

You don’t reason by analogy. You break down the problem into fundamental truths.

Truth #1: People need to buy food safely, online.

Truth #2: EBT is money—it just has restrictions.

Truth #3: Legacy systems are bound by geography and regulation, not logic.

From there, you reframe the goal: Build an EBT-capable digital checkout system that is frictionless, secure, scalable, and intuitive.

That means you don’t start by asking, "What’s the normal timeline for a government payments integration?" You ask, "What needs to exist, and how do we build that from scratch, fast?"

Step 2: Execute under constraint

We launched the first transaction within four months. That’s an order of magnitude faster than the government’s default deployment cycle.

To do this, we had to:

Engineer a split tender system from first principles—applying SNAP to eligible goods and routing the rest to alternative payment, all in real time, without the user even needing to think about it.

Build a real-time eligibility engine across millions of SKUs. No legacy rulebooks. Just clean logic and speed.

Construct an address-detection system to identify likely EBT users and prompt EBT options before they hit a wall at checkout.

This wasn’t innovation for the sake of novelty. It was innovation under pressure. A compressed, high-stakes engineering sprint that forced clarity and alignment like nothing else. You either ship or people go hungry.

Step 3: Data as a signal, not decoration

One night, we noticed something strange. Cart abandonments were spiking in low-income ZIP codes. Users would select groceries… then vanish.

That wasn’t just user friction. It was disappointment at scale. People tried to pay with EBT, found out they couldn’t, and walked away. That data became our feedback loop—a real-time, silent cry for help.

So we updated the system to eliminate that dead-end. You see the problem. You fix it. That’s engineering with empathy, grounded in data. Not soft skills—precision design based on human signals.

Step 4: Optimize for dignity

Technology is neutral. Experience is not.

We built EBT privacy features directly into the UI and backend logic. No special labels. No clues for delivery personnel about how someone paid. No friction that might hint at financial status. This isn’t about virtue signaling. It’s about minimizing cognitive and emotional load on people who already face enough.

We also predicted state-by-state benefit cycles, aligning inventory and promotions not randomly, but intelligently—to coincide with real-world cash flow. That’s just good systems thinking.

Step 5: Scale without compromise

Within 18 months, we were live in 44 states, and within 30 months, across 50 states, partnered with hundreds of retailers, and running a nationwide digital benefit rail—at scale.

Retention? Higher than standard users. Revenue? Significant. Social ROI? Immeasurable.

Here's the paradox people miss: Building for inclusion isn't a cost center. It's a growth strategy.

When you design for the edge case, you often improve the system for everyone.

What we learned (and you can steal)

1. Reason from first principles

Don’t accept "that’s how it works" as an answer. Ask: "What is the core problem? What must be true for a better solution?"

2. Human needs are non-negotiable

Food, dignity, privacy. Build for those like you would build for safety in a rocket.

3. Friction is a design choice

If your system causes friction, you either missed a constraint—or ignored it.

4. Compassion scales

Engineering with empathy doesn’t slow you down. It aligns the system with real human inputs. That’s how you win.

5. Don’t separate mission and metrics

Solving real problems is good business. Stop pretending these are in conflict.

In the end, we didn’t just build a checkout system. We laid digital rails for a new kind of infrastructure—one that respects people’s time, resources, and humanity.

It started with a crisis, but it turned into a case study in first-principles execution, empathy-led engineering, and scalable impact. That’s what tech is for. Not just to optimize clicks—but to solve hard problems that matter, at speed, and at scale. Let’s build more of that.

Mridul Singhai is a systems thinker and software engineer who led the launch of Instacart’s online EBT platform during the COVID-19 pandemic and worked directly with the USDA to help define digital benefit standards.

More Blog Posts In This Series

X
This ad will auto-close in 10 seconds