You Need A Budget, or simply YNAB, is a budgeting app popular for its focus on budget managing tenant called The Four Rules.
Raynab is an extension which allows YNAB users to manage one or multiple budgets directly from within Raycast. The aim is to reduce friction and allow you to stay on top of your budget at any point in time.
You will need a YNAB account to use this extension. If you don’t you can start a new trial.
Raynab is powered by the YNAB API. In order for the extension to work, it needs to have access to your account via your Personal Access Token. Here are the steps necessary to obtain them:
token
field.Given that YNAB can be used to handle multiple budgets, in order to properly use the extension across its 5 commands, you must select the budget you would like to have access to.
The Select Active Budget
command lists all your budgets. The currently selected one will display a checkmark on its right. To change it simply press Enter
and the selection will be saved locally. Once that's done, you're set 🎉
You can change the active budget at any time using the command. For most people with only one budget, that won’t be necessary after the first time.
This command will list your transactions for up to a year. It is the heart of Raynab as this will probably the place where you will spend most of your time understanding your inflows and outflows.
Each transaction is presented from left to right:
Inspect Transaction
Show Transaction (↵
): Give a detailed view of the transaction
Edit Transaction (⌘
+ ↵
): Edit any of the provided transaction information
Open in YNAB (⌘
+ O
): Open the current budget in the YNAB Web App
YNAB doesn’t have a specific view of the transaction, this will simply direct you to the transaction view for the associated account.
Toggle Flags (⌥
+ F
): Show or hide flags for all transactions
Flags are hidden by default as they are optional for users of YNAB
Modify List View
Actions in this list are behind submenus. Each action will show a checkmark icon when selected. Click on the same action to deselect it.
Set Grouping (⌘
+ G
): Group transactions in sections by a given criterion
Set Sorting (⌘
+ S
): Sort the transactions
Set Timeline (⌘
+ T
): Allow to change the time period of the listed transactions
Last day
Last week
Last month
Last quarter
Last year
This action has a particular behaviour if you have noticed. If you try to select a period in which a transaction hasn’t occurred, it will automatically select the closest period at which there is at least one transaction. For example, if the last transaction occurred 2 days ago and you try to select
Last Day
, it will fall back to the last week's timeline. When opening the Command for the first time, we make this check for you.
Set Filter (⌘
+ F
): Filter the transactions by inflow or outflow
Inflow: Positive transactions are shown
Outflow: Negative transactions are shown
This action is superseded by the advanced search feature, more on that below, but I’ve decided to keep it.
My personal favourite feature about the extension. Advanced Search makes use of modifiers to filter the transactions list to match the query. It is mainly inspired by Slack and Google search features.
Here are the available modifiers:
account
Only show results for the given account name. Spaces within account names can be replaced with a hyphen (-
).type
Can either be “inflow" or "outflow”. This is similar to the Filter submenu mentioned above.category
Only show results for the matched category nameLet’s say you would like to search for a transaction at your favourite restaurant, Taco Bell (I won’t judge).
Taco Bell
will show you all the results for a payee matching that query.Taco Bell account:chase-checking
will show all the transactions for "Taco Bell" in your "Chase Checking" account.Taco Bell account:chase-checking category:vacation
will show all the transactions for “Taco Bell" in your “Chase Checking" account that were registered under "Vacation”.As you can see, you can combine modifiers with your query, but what if you wanted to show all of a payee’s transactions which did not occur in a particular account.
Negative modifiers are the same as normal modifiers, but instead they will exclude all transactions which match their input.
Taco Bell account:chase-checking -category:groceries
will show Taco Bell transactions but not those you have filed as "Groceries” by "mistake”.You don't need to enter a payee name before using modifiers. For example
type:inflow
will show all transactions with non-negative amounts.
Note: The payee name must happen before any modifiers otherwise they will be ignored. Typing account:chase-checking Taco Bell
will show all transactions in your Chase Checking account.
File a new transaction into your budget by entering its related information.
The following fields are required:
Display a list of all accounts associated with the selected budget.
Each account is presented from left to right:
Create New Transaction (↵
): Create a new transaction on the selected account
Open in YNAB (⌘
+ O
): Open the current account in the YNAB web app
YNAB doesn’t have a specific view of the transaction, this will simply direct you to your budget. In the future, we will change the redirect to lead to your account.
Gives access to the current monthly budget information by listing its different categories along with their balance and state.
Categories are grouped in their original category group. Each category is presented from left to right:
Inspect Budget
Show Category (↵
): Give a detailed view of the category
Show Monthly Budget (⌘
+ ↵
): Show additional information about the monthly budget
Open in YNAB (⌘
+ O
): Open the current budget in the YNAB Web App
Toggle Progress (⌘
+ P
): Show or hide progress bar for category goals
Categories with no goals or associated progress will show as N/A
Modify List View
⌘
+ E
): Edit any of the provided transaction information
⌥
+ C
): Create a new transaction in the selected category
Charles De Mount is a design and coding enthusiast currently supporting customers at Vercel. Send pets pics or angry messages on Twitter: @nogocharli
Special thanks to the Raycast team for the fantastic API!