Now

Updates, news, and what we're working on.

Smarter Categories

Categories
Cat sorts every transaction
This week's transactions
F
Figma$15.00
Sorting…
D
Delta Air Lines$420.00
Sorting…
J
Joe's Diner$48.20
Sorting…
S
Stripe$2.10
Sorting…
You just glance and confirm — change any of it in a click

Before: where did that go?

At tax time, the question is simple — where did my money actually go? The old categories couldn't really answer it. Everything landed in one of fifteen broad buckets like "Office & Utilities" or the catch-all "Other Expenses," so a client lunch, a flight, and a new laptop could all end up looking the same.

Categories that match how you work

Now there's a thoughtful category for almost everything you spend on, grouped the way you'd actually think about it. Software and subscriptions sit together, travel and meals have their own spots, and bank fees stay separate from the money you move between accounts. Keep it simple or get specific — whatever keeps your books readable to you.

Cat does the filing

You shouldn't have to sort every transaction by hand. As new ones land from your bank, Cat drops each one into the right category — you just glance and confirm, or change it in a click. Correct it once and Cat remembers.

Taxes and totals that add up

The boring-but-important stuff is handled too. Tax payments like VAT and sales tax are recognized for what they are, so the right treatment is ready when you file. And moving money between your own accounts no longer shows up as spending — so when you (or your accountant) look at the totals, they reflect the real business.

  • CategoriesThere's now a ready-made category for almost everything you spend on — software, travel, meals, contractors, taxes — grouped so the right one is easy to find.
  • CategoriesStay broad or get specific — "Travel" sits neatly under "Travel & Entertainment," so you can keep things simple or go detailed without scrolling a giant list.
  • TaxTax payments like VAT and sales tax are recognized for what they are, so the right treatment is already attached when it's time to file.
  • ReportsMoney you move between your own accounts no longer counts as a business expense, so your spending totals reflect what you actually spent.
  • MatchingCat sorts new bank transactions into the right category for you — you just glance and confirm, and it learns when you change one.
  • FiltersFilter your transactions by a whole group or zoom into a single category.
  • CategoriesMake it yours — add your own categories, tuck them under any group, and rename or recolor anything.
  • MigrationEverything you'd already categorized carried over on its own — no re-tagging, nothing lost.

Stacking Panels

Workspace
Side panels that stack
Invoice
INV-0042
Due in 14 days
€2,400
Acme Inc.
Drill in, finish, and you land right back where you were

Opening one thing used to close another

Side panels used to replace whatever you were already looking at. Worse, creating something mid-task — a new customer while building an invoice — popped open a separate window that closed your invoice underneath it. You'd finish, turn around, and your place was gone. For a tool you live in all day, that adds up to a lot of lost context.

Panels that stack

Now every panel stacks. Drill from an invoice into its customer, open a new project without leaving what you're doing, jump from a transaction to a linked receipt — each one opens on top of the last, and a breadcrumb at the top of the panel shows the exact trail you took.

Step back anytime

Click any step in the breadcrumb to jump straight there, or close the top panel to drop back to the one beneath it. Finish creating that customer and you land right back on the invoice with it already filled in — no retracing your steps. The browser back button works too, and your open panels survive a refresh.

Instant, even when you go deep

Panels load only when you actually open them, and quietly preload the moment you hover — so they appear the instant you click, no matter how much else is open. Going three panels deep feels exactly as fast as opening one.

  • PanelsSide panels now stack instead of replacing each other — open a customer while editing an invoice and it slides on top, with a breadcrumb showing how you got there.
  • PanelsCreating something no longer closes what you were doing — new customers, projects, and invoices open in the same stack, so you finish and land right back where you left off.
  • NavigationEvery panel shows a breadcrumb of your trail — click any step to jump straight back to it.
  • NavigationClosing a panel returns you to the one underneath, and the browser back button steps back through your trail.
  • PerformancePanels load the moment you open them and quietly preload as you hover, so they appear instantly without weighing down the rest of the app.

Speedy Workers

Workers
Background jobs, now self-hosted
Export inbox
100 documents
Trigger.dev
cloud pipeline
19.2s
Self-hosted
our runners
1.5s
13× faster
Powered by our own queue · BullMQ + Redis

Why we moved off Trigger.dev

We started on Trigger.dev because it let us ship background work without running our own infrastructure — a smart trade when we were small. As Expensicat grew, the operational overhead and the round-trip out to a cloud service on every single job became the slow part. So we built our own runners.

Self-hosted runners, always warm

Background jobs now run on our own queue — BullMQ on Redis — across machines that stay warm and scale up automatically when the backlog grows. There's no cold start and no hop out to a third party, so a job runs the moment it's queued. That's how exporting your inbox went from roughly 19 seconds down to about 1.5.

Faster across the board

This isn't only exports. Bank syncs, receipt and invoice imports from email, Gmail, and Outlook, recurring and scheduled invoices, document processing, and reconciliation all run on the same pipeline — so the work that used to make you wait now happens quietly in the background.

Keys that don't outlive the job

We tightened security on the way through. Instead of one long-lived key shared across every background task, each job now mints its own — tied to that single run, limited to exactly the permissions it needs, and expiring after five minutes. Even if one were ever intercepted, it would be useless almost immediately.

  • PerformanceBackground jobs now run on Expensicat's own self-hosted runners, so the work behind exports, imports, and receipt processing starts the instant it's queued.
  • PerformanceExporting your inbox is about 13× faster — what used to take around 19 seconds now finishes in roughly 1.5.
  • PerformanceBank syncs, email and Gmail/Outlook imports, recurring and scheduled invoices, and document processing all run on the new, faster pipeline.
  • ReliabilityJobs pick up immediately with no cold start, and retry on their own when something hiccups.
  • SecurityEvery job now runs with its own key, scoped to just that job and the exact permissions it needs, and it expires after five minutes.

Usage-Based Pricing

Release
v2026.6.5
6new
2improved

Free during the beta

While we're in beta, all of this is free — none of the pricing below takes effect yet. When the beta ends, we'll move every workspace into a 14-day trial automatically, so you get two weeks to explore the plans and pick the right one before anything is charged.

Pricing that follows your usage

Every plan now comes with a monthly allowance for the things that cost us to run for you — Cat's work and the documents we process. Stay within it and you pay nothing extra; go past it and you're only charged for what you actually used, counted to the document and the token. No tiers to jump, no paying for headroom you'll never touch.

Always know where you stand

A new usage dashboard in Settings → Billing shows how much of each allowance you've used this period and gives you a running estimate of the month's cost — your plan, your seats, and any usage beyond the allowance, added up. If you cross your included amount, it's flagged plainly, so the bill at renewal is never a surprise.

Start free, grow when you're ready

The Free plan is a real plan, not a countdown — a monthly allowance, no card required. When you outgrow it, Solo and Team start with a 14-day trial, and Team bills by seat with your first seats included, so your cost grows only as your team does.

Coming soon: bring your own meter

The same usage engine that meters Expensicat is built to work for your product, too. We're building toward letting you define your own meters, stream in your product's usage, and bill your own customers right on top of Expensicat — the foundation landed in this release, and the rest is on the way.

  • BillingNew Free, Solo, and Team plans, each with a monthly allowance for AI assistant usage and document processing included.
  • BillingA live usage dashboard in Settings → Billing shows exactly how much of your allowance you've used this period, with a clear flag once you go past it.
  • BillingAn estimated cost for the month, broken down into your plan, seats, and any usage beyond your allowance — so renewal day holds no surprises.
  • BillingA genuine Free plan with a monthly allowance and no card required, so you can keep working without committing.
  • BillingStart any paid plan with a 14-day free trial.
  • BillingFree while we're in beta — none of this pricing takes effect until the beta ends, and every workspace is then moved into a 14-day trial automatically, so you have time to pick a plan before anything is charged.
  • BillingTeam plans bill by seat with your first seats included, so cost only grows as your team does.
  • BillingPast your allowance you pay only for what you actually use, metered to the document and the token rather than rounded up to the next tier.
  • APICreating an invoice now accepts an idempotency key, so a retried request never creates a duplicate.

Sharper Matching

Release
v2026.6.4
2new
3improved
1fixed

Matching That Learns From You

Every match you confirm or reject teaches Expensicat what's right for your team. A vendor now auto-matches on its own only after you've confirmed it enough times, so the matches that need a human eye stay in front of you and the wrong ones drop away. Suggestions weigh the name, amount, date, and currency together — and tune to your own history — for more accurate pairings the more you use them.

Close Calls, Surfaced — Not Guessed

When two transactions look almost equally likely, Expensicat no longer picks one and hopes. It puts both in front of you to choose. And when an amount and date line up perfectly but the name doesn't, a "Verify" flag appears so a lookalike charge can't quietly auto-match.

Stuck Receipts, Unstuck

If a receipt can't be processed, it used to sit in a never-ending loading state. Now it shows a clear error with a Retry button — one click reruns the whole pipeline, so a temporary hiccup is no longer a dead end.

  • MatchingWhen two transactions are a close call, Expensicat surfaces both for you to pick instead of guessing.
  • MatchingA "Verify" flag highlights pairings where the amount and date line up but the name doesn't, so a lookalike charge can't slip through.
  • MatchingAuto-match learns from the matches you confirm — a vendor matches on its own only once you've confirmed it enough times, cutting wrong auto-matches.
  • MatchingMore accurate suggestions across the board, weighing name, amount, date, and currency together and tuning to your team's own match history.
  • MatchingReject a suggested pairing once and that transaction won't come back for the same receipt.
  • InboxA receipt that can't be processed now shows a clear error with a Retry button, instead of getting stuck in a loading state.

Outlook

New
Gmail · connected
Receipt
€42.00
Invoice
€1,250
Receipt
€18.90
Expensicat
Outlook
Now importing from Microsoft 365
Outlook connected

Outlook, Meet Your Vault

Expensicat already pulls receipts and invoices from Gmail — now Outlook and Microsoft 365 inboxes do the same. Connect your account once and new documents flow straight into your inbox, ready to match and approve.

Sign In and You're Set

Connect securely with your Microsoft account and import runs quietly in the background — no forwarding rules, no manual uploads. Everything Gmail import does, Outlook now does too.

Right From Onboarding

New to Expensicat? Choose Outlook the moment you set up, so your vault starts filling from day one. Already onboarded? Add it anytime from Settings → Integrations.

  • IntegrationConnect Outlook or any Microsoft 365 mailbox and Expensicat imports receipts and invoices automatically
  • OnboardingPick Outlook during setup, right alongside Gmail
  • IntegrationManage every connected mailbox — Gmail and Outlook — from Settings → Integrations

Review Queue & Smarter Search

Release
v2026.6.2
1new
3improved
3fixed

Clear approvals from your dashboard

The new Review Queue widget brings inbox items awaiting a decision right to your homepage. See how many are waiting, preview the document on hover, and approve or reject inline — no trip to the approvals page. It's opt-in, so add it from Customize whenever you want it.

Search got sharper

Yesterday's command palette put every part of your workspace one keystroke away — now the results themselves are smarter. A typo or a missing accent won't hide the record you're after, and something close in meaning still surfaces even when the exact words don't match. Deleted inbox items stay out of your results, too.

A calmer chat with Cat

Conversations name themselves as you go, so your history is easy to scan later. And if a reply ever gets cut off, Cat shows a clear message with a Retry button instead of leaving you stuck on a blank bubble.

  • DashboardA Review Queue widget puts inbox items awaiting approval on your homepage — preview the document and approve or reject inline, without opening the approvals page.
  • SearchSearch is more forgiving — a typo or a missing accent no longer hides what you're after, and results are ranked by how well they match rather than just whether the text lines up exactly.
  • SearchSearch now understands meaning, not just exact words, so a record that's close in intent still surfaces even when the wording doesn't match.
  • AssistantConversations with Cat name themselves automatically as you chat, so your history stays easy to scan.
  • AssistantIf a reply from Cat gets interrupted, you now get a clear message with a Retry button instead of a stuck, blank bubble.
  • SearchDeleted inbox items no longer show up in search results or the attachment picker.
  • BankingConnecting an imported bank account no longer fails with a sign-in error.

Command Search

Release
v2026.6.1
5improved
2fixed

One place to find the work

Search now covers the parts of Expensicat people actually jump between all day: inbox items, transactions, invoices, credit notes, quotes, customers, entities, projects, documents, and time entries. Open it with Command-K, type a few letters, and go straight to the record you need.

It also knows where you are. If you're already on invoices, customers, transactions, entities, or another searchable page, Tab applies your search as a page filter instead of making you retype it in a separate field.

When search becomes a question

Not every search is really a search. Sometimes "vercel" means "show me the Vercel invoice"; sometimes it means "what do we spend on Vercel?"

When you want Cat instead of a result, press Command-Enter or choose Ask Cat from the palette. Cat gets the right bit of context — that the message came from search and which area you were searching — while your chat still shows only what you typed.

Fewer dead ends

The palette is tighter now: clearer empty states, better recent items, denser result rows, and shortcuts that behave like shortcuts without getting in the way of normal typing.

  • SearchSearch across inbox items, transactions, invoices, credit notes, quotes, customers, entities, projects, documents, and time entries from one command palette.
  • SearchFilter the page you're already viewing from the same search box — invoices, customers, transactions, entities, and more.
  • AssistantAsk Cat straight from search when the thing you typed is really a question, not an item to open.
  • AssistantCat now understands when a question came from search, so short queries like "vercel" get treated with the right context instead of as a cold chat message.
  • ShortcutsNew keyboard shortcuts make search faster: Command-K opens the palette, Command-Enter asks Cat, Tab filters the current page, and ? opens the shortcut map.
  • SearchEmpty searches now show a clear next step instead of a dead end.
  • SearchTyping a question mark in search works normally, so questions like "what did I spend?" can be sent to Cat without fighting the shortcut map.

Approvals

Approvals
Your rules, AI applies them
Approval policyPlain English
Auto-approve receipts under €100Applied
Route bills over €500 to an admin
Flag receipts missing a VAT ID
Figma
Receipt · VAT €13.81 · May 28
€84.00
AI · Auto-approve
96%
Matched your policy · receipts under €100
Approve
Reject
U
Y
Approved
Live

Your policy, in plain English

Tell Cat how you want expenses handled in a sentence or two — "auto-approve receipts under €100, route anything bigger to an admin." There's nothing to configure beyond writing it down, and you can drop in a sample receipt to see exactly how Cat would rule before you save.

Cat takes the first pass

Every receipt and bill that lands in your inbox is checked against your policy. The routine, in-policy ones are approved on their own; anything unusual — over your limit, missing a VAT ID, or simply ambiguous — is routed to an admin with the matching rule and a confidence score attached. You decide how far Cat goes: suggest only, one-click accept, or full auto-approve for high-confidence items.

Decide in a click, from anywhere

Approvals live in their own inbox queue, split into Awaiting and All. Approve, reject, or undo with a click or a keystroke — or act straight from the email notification without logging in. Whoever uploaded the receipt sees the result the instant you decide, and gets a heads-up by email and WhatsApp too.

  • ApprovalsWrite your approval rules in plain English — "auto-approve receipts under €100, send everything else to an admin" — and Cat applies them to every item in your inbox.
  • ApprovalsEach receipt and bill gets an AI verdict — approve, route for review, flag, or reject — with the policy rule it matched and a confidence score.
  • ApprovalsA dedicated Approvals queue in your inbox, split into Awaiting and All, so every pending decision lives in one place.
  • ApprovalsApprove, reject, or undo a decision in a single click — or with Y, N, and U on your keyboard.
  • ApprovalsAct straight from your email — every routed item arrives with one-click Approve and Reject buttons, no login needed.
  • ComplianceCat flags receipts missing a company name or VAT ID on VAT-deductible amounts, so you don't lose the deduction at filing time.
  • RolesOnly owners and admins can approve; everyone else gets a clean read-only view of where their items stand.
  • AutomationChoose how far Cat goes — suggest only, suggest with one-click accept, or auto-approve high-confidence items under your threshold.
  • ApprovalsTest your policy before saving — drop in a sample receipt and see exactly how Cat would rule on it.
  • RealtimeDecisions appear live for whoever uploaded the item — they see "Approved" the moment you click, no refresh.
  • NotificationsSubmitters hear the outcome in-app, by email, and on WhatsApp, with the reason attached whenever something is declined.
  • ApprovalsY to approve, N to reject, U to undo the last decision

Tax Registrations

Release
v2026.5.3
5new
3improved

One place to tell us where you're registered

If you sell across borders, the question of which VAT to charge depends on where you're registered, not just where you and your customer are. Until now you had to pick the right rate on every line yourself. Now you tell Expensicat once per legal entity, and the invoice editor does the rest.

Open your legal entity, add a registration, pick one of three schemes:

  • Standard — a direct national VAT/GST registration in a country other than your home (the warehouse case)
  • Union OSS — the EU single registration that covers cross-border B2C sales to every other EU member
  • Import OSS — for low-value (under €150) B2C imports into the EU

You can have several. Each one has its own start date and an optional end date, so a registration you closed last year doesn't keep applying to invoices you issue today.

The rate picks itself

For every new invoice line, Expensicat looks at your home country, your active registrations, your buyer's country, and whether they gave you a valid EU VAT ID. From that it picks the right treatment:

  • Selling at home → your domestic rate
  • Selling to an EU business with a valid VAT ID → reverse charge with the right exemption code
  • Selling B2C to another EU country with Union OSS on → the buyer's country rate
  • Selling B2C to another EU country with no OSS → your domestic rate, with a hint to add Union OSS if you've crossed the €10k threshold
  • Holding a direct registration in the buyer's country → that country's rate, ahead of OSS
  • Selling outside the EU → export at 0%

Each line carries a short explanation of why it was taxed the way it was, so you can spot anything that looks off before you issue.

Per-line override is still one click

For the cases the engine can't know about — a goods seller who needs intra-Community supply (K) instead of the default reverse charge (AE), a B2C sale that's exempt for a specific reason — the tax picker on each line shows every available rate for the right country and date, with the EN 16931 exemption code attached automatically.

  • TaxAdd tax registrations to each legal entity for Union OSS, Import OSS, or a direct VAT/GST registration in another country.
  • TaxSell cross-border B2C in the EU and have Union OSS turned on, and Expensicat charges the buyer's country rate automatically.
  • TaxHold a direct registration in a buyer's country — for example because you ship from a warehouse there — and that country's rate is applied instead of OSS.
  • TaxA valid EU VAT ID on the buyer flips invoices to reverse charge automatically, with the right exemption code on the e-invoice.
  • TaxEach registration carries an effective-from and optional effective-to date, so old registrations stop applying to invoices once they end.
  • InvoicingThe tax picker on each invoice line now shows the available rates for the right jurisdiction and date, with one click to switch category.
  • InvoicingPlain-language explanation of why each line was taxed the way it was — "Union OSS — destination rate", "Reverse charge — EU B2B", "Export outside EU" — so you can sanity-check before issuing.
  • EntitiesTax registrations now live as separate records per legal entity, with proper uniqueness, history, and admin-only editing.