Multiple currencies made simple: YNAB + TOSHL

TL;DR: I made an excel macro to convert TOSHL csv output into YNAB input with one click.


I'm an American who lives overseas. All my budgeting is in $$ b/c that's what I'm paid in, what my banks are (except the one local bank that I only have a little money in for local convenience). As we all know, YNAB won't/can't support multiple currencies in a budget and who wants to have to have multiple budget files (it's why I'm still on YNAB4). I discovered TOSHL a while back and it's great for multiple currencies, you set up your 'main' currency but you can enter a transaction in any currency - it will keep your budget in the main currency. However, it's not really great budget software. So I use it to enter all my cash transactions (and sometimes credit). Then I pull the dollar amounts into YNAB later. At first I made an elaborate system in TOSHL to match it's categories to YNABs, but the layout of TOSHL is very nice, made for fast transaction entry, having to scroll to find "Immediate Obligations: Groceries" or some such works against that. So I set up Toshl for fast entry, YNAB the way I'd been using it and wrote an excel macro to rearrange the rows, label them correctly and even preserve your comments and the original transaction amount and currency in the memo field. Just FYI Toshl categories become ynab categories, toshl tags become payee.


1. Set up TOSHL for your ease of use

2. Export expenses as CSV

3. Edit my macro to suit your needs: note, it's important that you make sure that you don't do double find-replace i.e. I have:
    dict.Add "Fun", "Just for Fun: Fun Money"
    dict.Add "Rstrnt", "Just for Fun: Restaurants"

If those were reversed the search for 'fun' would find the 'just for fun' and you'd end up with a field that looked like: "Just for Just for Fun: Fun Money: Restaurants" because the script would have found 'fun' again.

4. Run toshl export through macro

5. Import to YNAB!


Hope that's clear and helpful, macro is attached. Ask your favorite search engine how to import to excel and run and such. You may need to change it from .txt to .bas


12replies Oldest first
  • Oldest first
  • Newest first
  • Active threads
  • Popular
  • Hi Maroon Violin !

    This is amazing! Thanks for sharing!

    CSV is our last resort import option because of all of the possible formatting issues, so this is a great tool and resource! I hope it helps a number of users who stumble upon it!

    Thanks again for sharing! :)

  • I know you guys aren't an IT department, but I copied and pasted your .txt file into a macro and then tried to run it on a toshl export but I keep getting this: "Compile error: Syntax error." I desperately want this to work!!!

    • Hi Tan General !

      Since Maroon Violin put this together, we aren't able to troubleshoot issues! Hopefully, they'll see your message and be able to help! :)

  •  I would just like to commend you for introducing me to a currency that I actually am not familiar with! I had to look up GEL...

    Like 1
  • Hi Maroon

    First, thank you for preparing this wonderful macro. It definitely solves issues with both Toshl and YNAB. 

    However, I would ask for some clarification. I believe a lot of users are having problems with running the macro and getting syntax errors.

    1. In your point #3, what exactly do you mean by editing the macro? As I understand, we have to manually replace the X variable in the dict.Add "X", "Y" with the name with our Toshl category* And replace the Y variable with our YNAB category?

    2. Do we have to prepare the YNAB categories in YNAB before importing so they match the Y variable in the excel file?

    3. Can you add clear instruction on how to run the macro in Excel? Search engines can be helpful, but sometimes there's just too much information.

    Maroon Violin , hope you see this and are able to give some clarification. Again, thank you for prepraring this wonderful macro. Now, if I only manage to make it run.

    All the best, Aljaz 

  • Hey y'all,

    Sorry, I've been moving back to America, puts a slight hitch in responsiveness. So, I don't need this macro anymore, but as a programming exercise, I will be working on a better solution for y'all.


    Is anybody interested in this NOT using Windows?

  • Thank you  Maroon Violin for replying.

    Hope you find a better solution, will be keeping an eye on this thread. Personally, I am only interested in a Windows-based solution,  but I am sure there are people on Mac with similar challenges.


    All the best, Aljaz

  • Tan General Cornflower Blue Cobra

    I have made a small Windows console application for this. You may download it here. (It will say, "preview failed," just click to download.)

    Please see the readme for how to work it. You will have to edit a .csv file and put your TOSHL categories in column one and YNAB categories in column two. Then you can drag and drop the export from TOSHL onto the program and it'll spit out a file ready for YNAB. Windows may fuss at you the first time for trying to run an unsigned application from off the internet, publisher unknown. You can hit "More Info" and then "Run Anyway." It should only do that the first time. If you want to see the code before running I've attached it.

  • Hey, sorry, I don't have a great 'testing' environment here, just my computer, gotten some feedback that it might not work without some adjustment... will continue to adjust.

  • Hi again, too bad I don't see an edit post on this forum, but I'd make this an announcement anyway. I believe I have a verified by another computer solution for Windows and Mac. Please read the readme files, you'll need to follow the directions for where to place files and how to edit the key file.

    Windows converter

    Mac converter

  • I am on Mac - took a look at Toshl but can't stand the cuteness. I am using Moneyspire for multiple currencies and it is working great. However, I don't like the organization - I miss YNAB, which kept me more clear. Wondering if your macro could work with Moneyspire?

  • Cornflower Blue Cobra sent me a problem export, I've fixed the program to handle it and made it work a little better (it can now do income as well as expense). Get the new version here.

    As for MoneySpire, if you send an export file sample (privately) I might be able to do it, but no promises on if/when it'd happen.

Like Follow
  • 2 yrs agoLast active
  • 12Replies
  • 966Views
  • 6 Following