---
title: "The Predictability Quadrant"
description: "A framework I kept drawing on whiteboards, and then accidentally proved to myself on a Sunday afternoon."
published: "2026-04-14T03:15:35+00:00"
canonical: https://jaskaran.me/blog/the-predictability-quadrant
markdown: https://jaskaran.me/blog/the-predictability-quadrant.md
---

<!-- Images are linked, not embedded. Fetch the URL if visual context is needed. -->

# The Predictability Quadrant

I have been using a 2x2 to explain things to my team for a while now. Not in a formal "here is the framework" way--more like, I kept reaching for it when a conversation needed grounding. At some point another PM on the team started using it independently, in a different conversation, to explain something to someone else. That is usually the sign that a mental model is actually doing something useful.
This past weekend I was finally getting around to something I had been putting off for months: logging my grocery bills to Splitwise. Months of Instamart and Swiggy receipts sitting in my inbox. Real money that was slowly turning into bad debt. When I finished setting up a proper system for it, I looked at what I had built and realized I had just walked the entire length of this framework without meaning to.

So here it is.

---

## The Grid

Two axes. One is whether the work is *structured* (you know what shape the output should take) or *unstructured* (you figure that out as you go). The other is whether you can plan for it in advance (*premeditated*) or whether it shows up without warning (*ad-hoc*).

Another way to say it: one axis is predictability of *when* you need something. The other is predictability of *how* you need it.

![The predictability quadrant](https://dzcjqzzfpmulffvcphbd.supabase.co/storage/v1/object/public/blog-post-images/predictability_quad.png)

Before AI, each quadrant had its own coping mechanism. **Structured and premeditated** was where software lived. Someone at Salesforce or Jira defined a workflow; you ran your work through it. That is all of enterprise SaaS--someone encodes the structure, you execute inside it.

**Unstructured and ad-hoc** was where you just figured it out. A customer escalation at 11pm. A document in a format you have never seen. You used judgment, called someone, spent an afternoon on it. No system for it because it was unpredictable in both shape and timing.

The flanks were in-between states. Structured but ad-hoc: the spreadsheet you built from scratch for a one-off analysis. Unstructured but premeditated: the quarterly review you knew was coming but still could not prepare for, because the conversation could go anywhere.

---

## What Changes with AI

Generalist models are very good at the top-right. Things that show up without warning in shapes you could not have anticipated. That is genuinely new and genuinely useful. Before this, unstructured ad-hoc work just cost you time -- yours, or someone you had to ask. Now there is a lever for it.

But here is the thing: if your entire product strategy is "handle unstructured, ad-hoc work well," you are competing with foundation models on their home turf. You are not going to out-general a general-purpose model. A new frontier model ships every few months and your moat narrows a little more each time.

> The interesting question is not how to stay in the top-right. It is how to use the top-right to move into the bottom-left.

The more you can move work from unstructured and ad-hoc to structured and premeditated, the more interesting things start to happen. Costs drop. Reliability goes up. You stop depending on a probabilistic system for something that should be deterministic. You can still use AI for the parts where you genuinely need judgment (extraction, classification, the edge case you have not seen before) but the rest runs on its own.

---

## Back to the Grocery Bills

I went through four versions of solving this problem before landing somewhere I was actually happy with.

![Stages of automation](https://dzcjqzzfpmulffvcphbd.supabase.co/storage/v1/object/public/blog-post-images/stages_of_automation.png)

The first version was the obvious one: screenshot the receipt, hand it to Claude, ask it to parse and format it. Fine. But every run costs money, and more importantly, it requires me to remember to do it. It is smart but not a system.

Second version was a Claude Project with a consistent output format. I would upload the image and get a formatted row back. More structured, still ad-hoc. I still had to show up.

I also tried a spreadsheet template--filling it manually, or using Claude with MCP to populate from Gmail. Same fundamental problem: it required me to initiate it each time, which means it required me to remember, which means it was always going to be inconsistent.

The last version which I finally worked on this weekend (my girlfriend was away and I was bored) connected Gmail to N8N. Every receipt from Instamart or Swiggy that lands in my inbox gets parsed automatically. Line items extracted, logged to a spreadsheet. I used Cursor to write the parser, and quickly fired up a Spreadsheet template. I used Claude to write formulas once--pivot tables, category summaries, month-over-month breakdowns--and now the spreadsheet does that work permanently without touching an LLM again. I will not need to think about this anymore. It just happens.

**The actual difference:** in the first three versions, I was using the LLM to do the work on each run. In the last version, I used it once to figure out the structure then put it aside. The system runs without it now. One is an expense per transaction. The other is a one-time cost.

---

## Why This Matters If You Are Building with AI

A lot of teams I’ve been speaking to are living in the top-right and treating it like a product strategy. Let the model handle the edge cases, the judgment calls, the things that fall outside the defined workflow. That is genuinely useful for a lot of things. But it is expensive to stay there, and the moat is thin.

The smarter path is to use the top-right as a discovery layer. The model absorbs the long tail. Over time, patterns emerge. The same input shape appears repeatedly, the same kind of decision is made over and over. That is your signal to add structure. Extract it into a workflow, make it deterministic, and move it down the grid. The model's job gets smaller. The system's reliability gets higher.

At SpotDraft, this shows up clearly with contract review. [Sidebar](https://spotdraft.com/sidebar) can redline a contract--it handles the long tail, the unusual clause, the indemnity clause you see twice a year. That is the top-right. But if you want to check contracts against your own standard positions and playbook, you do not want a model making that call fresh every time. You want to define your positions once and run them on a trigger. That is what [VerifAI](http://spotdraft.com/verifai) is for. The generalist capability is the entry point; the structured workflow is the product.

The long tail of work is where the most time used to disappear, because there was no structure for it. That is where AI is most immediately useful. But the goal, over time, is always the same direction on the grid. Move left. Move down. The more you can get things to run without you thinking about them, the more useful they actually are.
> For deterministic problems, deterministic solutions win.

## Images

- https://dzcjqzzfpmulffvcphbd.supabase.co/storage/v1/object/public/blog-post-images/predictability_quad.png
- https://dzcjqzzfpmulffvcphbd.supabase.co/storage/v1/object/public/blog-post-images/stages_of_automation.png
