Filtering and Searching Entries in beancount.io
The beancount.io UI provides powerful filters at the top right of the page to help you find and analyze specific entries in your reports. You can combine multiple filters to narrow down results. Below are the main filtering options:
Time Filter
Filter entries by date or period. You can use:
- Years:
2023
- Quarters:
2022-Q1
- Months:
2024-05
- Weeks:
2025-W23
- Days:
2024-06-04
- Ranges:
2022 - 2023-06
(from start of 2022 to end of June 2023)
You can also use relative date variables:
year
,quarter
,month
,week
,day
- Combine with math:
year - day
(from start of this year to today),year-1 - year
(last year and this year) - Use parentheses to clarify:
(month)-10
is the 10th of this month,month-10
is 10 months ago
Account Filter
Filter by account name, account component, or a regular expression:
- Full or partial account name:
Assets:Cash
,Expenses
- Regex:
.*Company.*
(matches any account containing "Company")
Tag, Link, Payee, and Metadata Filters
- By tag:
#food
- By link:
^receipt
- By payee:
payee:"restaurant"
- By narration:
narration:'Dinner with Joe'
- By document type:
document:"\.pdf$"
- By any text: just type (e.g.,
Cash withdrawal
) - For Notes: searches comment text
If the filter contains spaces or special characters, quote it with '
or "
.
Excluding Entries
Add a -
before a filter to exclude matches:
-#tag
(exclude tag)-(^link #tag)
(exclude links or tags)
Advanced: Posting Attribute Filters
any(id:'12', account:"Cash$")
— matches entries with at least one posting with metadataid: 12
or account ending inCash
all(-account:"^Expenses:Food")
— excludes all transactions with a posting toExpenses:Food
Combining Filters
- Separate filters with spaces for "AND" (all must match)
- Separate with commas for "OR" (any match)
- Use parentheses to group filters
Notes on Matching
- All matching is case-insensitive
- Filters use Python's regular expression syntax
- If not a valid regex, the filter will look for an exact match
These flexible filters make it easy to drill down into your financial data and quickly find the entries you care about in the beancount.io web UI.