· ISSUE 01 · SUMMER 2026

MVP · Trades · 2026

Reckon

"the price a tradesperson actually pays, not the one on the shelf"

Lede

An electrician on a Tuesday morning needs a junction box, a roll of cable and an answer to the question of whether the merchant up the road is cheaper than the one she usually uses. Reckon is the tool in the van that answers it without three browser tabs and a phone call.

Context

The UK trades sector employs over 2.4 million people across electrical, plumbing, heating, carpentry, and general building. Most of them buy materials from a small handful of national chains plus a long tail of regional merchants. The market is opaque by design — trade-counter prices vary by branch, account holders see numbers nobody else sees, online retailers run different promotions than their physical stores, and the same SKU can swing fifteen pounds across four merchants on the same morning.

The economics matter. A self-employed electrician working five days a week buys materials for most of them. Industry estimates put parts cost at 20–35% of an average job’s invoice. The difference between knowing today’s best price and assuming yesterday’s best price is, over a year, the difference between a holiday and a stay-cation. Most trades pick a merchant and stay there because checking takes time and time is billable.

Consumer-grade price comparison has existed online for two decades. Trade-grade has not. The reason is structural: trade pricing is a mix of public list prices, negotiated account prices, branch-by-branch stock, and promotional cycles, and the merchants have built their commercial moats specifically around opacity. There are catalogues. There are individual merchant apps. There is, today, no single product that respects the way a working trade actually buys.

The problem

A working trade’s day looks roughly like this. Wake up, check the diary, work out what materials each job needs. For materials they have in the van — fine. For materials they do not — open four browser tabs, log into each merchant’s account (or not), check the stock at the nearest branch, check the price, factor in distance and traffic, decide whether to do a single big run or two small ones, drive. Repeat the next morning.

The friction compounds. A consumer unit job might need eighteen distinct items — main switch, RCBOs to match the existing board, a small bag of cable clips, junction box, the cable itself, lugs, terminals, the right gland for the meter tail. Each item is gettable at four merchants. The cheapest combination depends on which merchants are on the route, which branches have everything in stock, and whether the trade can be bothered to make two stops to save twelve pounds. The current answer is “always go to the same place” and accept the margin loss.

Compatibility is the harder problem. Which RCBO fits this Wylex board? What flue kit goes with this Worcester boiler? What size waste fits this trap? These questions are not what’s-the-cheapest questions — they are what-actually-fits questions, and getting them wrong means a second trip, a refused refund, and a customer on Trustpilot. The current answer is a forum search or a phone call to a guy at the counter who knows. Reckon is the answer when the guy at the counter is on his lunch break.

Stock is the third problem and the most time-sensitive. The price is irrelevant if the branch closest to the job does not have the item. The trade needs a real-time answer — “yes, this SKU is on the shelf at the Weymouth branch right now” — not a website that says “in stock” because the warehouse twenty miles away has stock.

What we built

Reckon is a price and parts intelligence app for UK trades, built around three jobs the existing market does not do well.

Cross-merchant search. Type a part — “10mm twin and earth”, or a known SKU — and see prices and stock across the supported merchants, filtered by distance to the trade’s postcode. Each result links out to the merchant’s product page so the trade can complete the purchase on the merchant’s own checkout. The intended data route is the Awin-style affiliate-network feed plus any direct product feeds available — no merchant programmes are signed at this stage; the ingestion architecture is built to onboard them once the closed-beta has demand to justify it. Where a merchant exposes no feed at all, Reckon is honest about it on the page rather than faking a number.

Job basket. Add items as a job grows. The app totals the basket and runs a small optimisation — cheapest single-trip combination versus cheapest split-trip combination — so the trade can see, on a Tuesday morning, whether the £218 single Screwfix run is worth the £29 saving over the multi-stop alternative. Most trades will pick single-trip even at a small premium because time matters more than the saving, and the app frames the trade-off honestly.

Compatibility data on a small starter set. Not every category, not yet. The starter scope is the categories where the pain is sharpest and the data is most curatable — consumer units and matching RCBOs, boiler flue kits, waste fittings. Hand-curated to begin with. The app says exactly what it knows and exactly what it does not.

Stock locator. “Nearest branch with this in stock right now.” Scoped to whatever the affiliate APIs and merchant store-locator endpoints actually expose. Some merchants return real-time stock; some do not. Reckon is explicit about which is which on each result.

The product is mobile-first — the van is the office — with a web companion for the quoting work that happens at the desk. The deliberate scope choice is to do these four things well rather than to add invoicing, CRM, lead generation, or any of the adjacent territory that turns a useful tool into another platform with a sales team.

Architecture

The repo is a pnpm monorepo with three primary packages.

apps/api — a Next.js 16 backend deployed on Vercel. Serves the catalog, runs the search aggregation, handles the affiliate-link redirect and click-tracking, and operates the basket-optimisation logic. Postgres on Neon for catalog storage and price history; pgvector for fuzzy search across product titles and SKUs that do not match exactly across merchants.

apps/mobile — an Expo (React Native) mobile client targeting iOS and Android from a single TypeScript codebase. The mobile client is the primary surface; the van is where the work happens.

packages/shared — shared Zod schemas across web and native. Every type that crosses the wire — product, price snapshot, stock state, basket, branch — is defined once in packages/shared and validated at the boundary on both sides. The choice of Zod over an OpenAPI generator is deliberate for a two-engineer codebase: the schema is the runtime validator, the static type, and the documentation, all in the same file.

Catalog ingestion is a pipeline of nightly jobs that pull product feeds from the Awin endpoints for each participating merchant, normalise the data into a single internal product shape (manufacturer, MPN, category, attributes), and store price snapshots with timestamps so the system can show price trends over time and flag genuine drops. SKUs are matched across merchants using a combination of MPN, manufacturer, and a vector-similarity check on title — necessary because no two merchants describe the same product the same way.

Branch stock is checked at query time against per-merchant store-locator endpoints where they exist. Cached for short windows to keep response times under the threshold a trade will tolerate on a 4G phone in a postcode that is not London.

Compatibility data sits in a manually curated relational structure — a compatibility table joining products to other products with an applies_to relationship and a confidence score. The starter set is small and authoritative; the long-term shape is to grow it through verified-trade contributions rather than scraped forum data.

How it works (the short version)

  • Next.js 16 backend on Vercel, Expo mobile client (iOS + Android from one codebase)
  • pnpm monorepo with shared Zod schemas across web and native
  • Catalog ingestion from Awin-network product feeds, normalised SKU-side
  • Price snapshots stored over time so genuine drops are visible
  • pgvector for fuzzy SKU and title matching across merchants
  • Branch-stock lookup against per-merchant store-locator endpoints, cached briefly
  • Affiliate-link redirect for monetisation, transparent to the user

Live behaviour today

Reckon is at MVP stage. The monorepo is set up, the catalog schema is locked, the Next.js API surface is scaffolded, and the Expo mobile client is in active build. Design, spec and the implementation plan are all in place and the architecture is locked.

Catalog ingestion is being sized against the suppliers UK trades actually use — primarily the retail-trade hybrids where everyone pays the same shelf price. The first cohort of trades to use the app on real jobs before public release is being lined up through Bento Labs’ own network of small builders and electricians in Dorset.

The product is not yet public.

What’s next

  • First-cohort closed beta (Q3 2026). Ten to twenty trades in Dorset and South West London using the app on real jobs. Catalog scope locked, compatibility starter set live for consumer units and boiler flues. Affiliate-network onboarding kicks off in parallel — beta validates demand first, commercial agreements follow.
  • Public launch (Q4 2026). Open download on iOS and Android. Catalog expanded to the long tail of retail-trade hybrids. Job-basket optimisation in production. Compatibility scope expanded based on closed-beta feedback.
  • Van inventory and basket-to-shopping-list (H1 2027). A “what’s already in the van” inventory layer that pairs with the job basket to surface only the materials the trade does not already have. The single highest-leverage time-saving feature in the roadmap.

Tech stack

  • Backend — Next.js 16, TypeScript, deployed on Vercel
  • Mobile — Expo (React Native), iOS and Android from one codebase
  • Monorepo — pnpm workspaces, shared Zod schemas in packages/shared
  • Database — Neon Postgres with pgvector for fuzzy product matching
  • Data — Awin product feeds, per-merchant store-locator endpoints, hand-curated compatibility tables
  • Monetisation — affiliate-network commission per click-through (Awin-style, no agreements signed yet)
  • Hosting — Vercel for the API, Expo EAS for native builds

Status

MVP in build. Design and spec are locked; we are sizing the catalog and lining up the first cohort of trades to use it on real jobs before the public release.

Why this matters for Bento Labs

Reckon is the van compartment of the bento. Every Bento Labs product sits in a different part of a working person’s day — Holt and Holt Agent at the kitchen table on a Sunday night, BentoPOS at the wok, Neatbooks at the receipt-stuffed wallet, Overstimulated in the moment of a sensory crash. Reckon is the one for the van at 7:40am. Holding all of them in the same studio is the bento thesis: small products, sized for the specific minute they live in, all the same philosophy underneath.