Filtering transactions lets you isolate the exact transactions you want to see very quickly. You can filter by amount, payee, date(s), etc. Read on to find out how …

Getting started

Looking for a transaction or a particular group of transactions is something I do just about every day. That’s why I tried to make searching and filtering transactions as robust as possible. I wanted to make sure I could find exactly what I want without too much hassle. I took inspiration from GMail (and other tools like it) when building the search functionality. There is a “little language” that helps you search faster. This document describes how that language works.

The easiest thing to do is to just type something into the search bar. It will search all fields for every transaction for any potential match. So if you type “s,” you will only see results that have an “s” in them (like “Miscellaneous” in the category or “Swimming” in the memo field, or “Starbucks” in the payee field, etc.). Here is how you can make your search more precise:

  • Dates. if you want to filter on dates, you can use the d: flag. E.g., d:2021-05-21 will search for transactions that occured on May 21, 2021. d:<2021-05-21 will search for transactions that occurred BEFORE May 21, 2021. d:<=2021-05-21 will search for transactions on or before May 21, 2021. You can also search for a range of dates with something like d:2021-05-01..2021-05-31, which will search for transactions that occurred in May, 2021.
  • Status. If you want to search for transactions that are reconciled, unreconciled, or locked, you can try is:u or is:r or is:l. You can also do “is not” searches with either is!: or isnot: (e.g., isnot:l will leave you with transactions that are either reconciled or unreconciled (but not locked)).
  • Amount. You can search by amount in the same way you can search for date: a:100 searches for transactions where you deposited exactly $100. a:100 .. 500 searches for transactions where you deposited anything between $100 and $500. Withdraws are a little tricky using the a: modifier. E.g., you’d have to do a:-2200..-2000 to find withdraws between $2,000 and $2,200. To make it easier, instead of using the a: modifier, you can also use pmt: directive so something like pmt:100..500 will search for payments between $100 and $500 (or pmt:<100 will search for payments between $0 and $100 (i.e., it will not include deposits)). The same directive exists for deposits so that instead of searching with a:0..100 for deposits up to $100, you could also use dep:<=100 if you prefer.
  • Category. You can search for transactions that have specific categories (or “splits”) with c:. For example, c:miscellaneous will return transactions that categorize one of the lines as “Miscellaneous.” You can also do partial searches (e.g., c:ins will return transactions for “Life Insurance,” “Car Insurance,” “Health Insurance,” etc.).
  • Payee. To search for transactions to a specific payee (or payor) use the p: modifier.
  • Checked/Unchecked. For some pages, you can also search for transactions that are “checked” with a search like is:c or isnot:c. Right now this only works on the ‘Match’ page and the ‘Reconcile’ page, but it will be implemented for other pages in the future.
  • Matched to Bank Import. If you only want to see transactions that have been matched to a transaction imported from a bank, you can use is:m or is:matched.
  • Has a Check Number. If you want to see transactions that have a check number, you can use has:c or has:checknumber. Correspondingly, you can also search for transactions without a check number using has!:c or has!:checknumber.