My name is Kyle and I’m a backend engineer in the Savings Squad here at Monzo, I saw that some people were wanting more out of the CSV export tool. This isn’t a promise that we are able to work on every idea in this thread but @nexusmaniac and I are known as tinkerers so if it is something we can work on (based on free time and what we are able to put into the API) we can have a look at what is possible.
Just as a heads up we aren’t frontend developers so anything we might add would be restricted to the API.
What I mean by that is that I’d really like some aggregated information that I can use to make some cool dashboards.
Things like spend / category per month or week, amount of spending, saving, transfers etc.
Maybe a decent place to start would be effectively a CSV version of Trends and Summary?
Edit: to invoke @BritishLibrary, @davidwalton and @Revels who’ll have excellent ideas. (Just don’t get into conversations about charitable donations or provide any photos of yourself).
I’m aware that there is some limitations on what we might be able to add to Google Sheets (and I haven’t personally worked on this integration)
So as an idea of what might be in the API endpoint would you want a new endpoint that pre-filters the CSV export into categories? Then allows for the category breakdown to be by Day, Week, Month, Year.
I think we also need a better way to handle Flex Transactions / reconcile initial transactions with repayments. I know the guys working with the Google Sheets export are struggling with that - but I’ll let them explain that one!
I’m not sure how we will handle this I’ll have to talk to the Paid team to see if we are able to add Pots to the export
For 2 I will see what is possible we aren’t able to change showing the 3 transactions (for now ) I might be able to look into adding the unique identifier for the flex plan into the notes field (only in the export)
This is something that I should be able to work on this is our internal names not being marshalled.
This is because currently nothing is actually being tracked from the pots perspective. Earlier this year we introduced Pot Feeds but as you might have noticed this means that if you add notes to the Pot feed item it won’t appear on the sheet.
This is because your current account and your Pot have separate feeds in our backend which is made a little clearer with the introduction of Virtual Cards on Pots where now transactions are actually missing from your sheet export.
Pot CSV exports already exist, if you head to your Manage tab > Statement history > CSV and that will be very similar to what you can get from the Google Sheets integration.
Many opinions on the topic - I even posted something about it way back after playing with it for a bit - although some of the things since then have probably changed:
But my new version of things would be something like this:
A truly "total" view of my Monzo account in the export, with rich data and meaningful meta data.
What I mean by this is literally any and all movement of money within my Monzo account to be captured as a line in the Google Sheets / CSV export.
Currently, only “Main Feed” things are captured; wasn’t too much of a problem initially, but now with Flex and with Virtual Pay from Pot - I am losing data. As of today, I can’t see Pot Transactions w/ V Card, Interest in Pots, Flex.
Total View - by that I mean - treat it as a ledger - If I send money to a Pot - I’d like to see both sides of that movement occur; when I buy something on Flex, I want to see my Flex pot money owed go up.
Rich Data - I want meaningful data, in a consistent way: the best example of this is how Flex Payments show up; I can’t tie that info back to anything in my Export - I’d love to see references to unique ID’s etc - when they are known. The consistent part is how “notes” are used - currently rich useful info is hidden in their and I’d like to to be more systematic in the data.
Future Proof the Export, and make it compatible with future changes.
(Alternative: Design it with a users goals in mind)
In essence, every time a new feature comes out, it means I lose some data, or otherwise can’t see my total balance.
Things like “Type” for transaction is somewhat inconsistent - has what is obviously useful internal meta data like “bridge transaction”, “premium_subscription”, “monzo_paid” etc - which don’t really “do much” for data use - and a little bit annoying when trying to filter and categorise things.
Equally, as new features come out - i’d like them to work in the sheet too; I’d like to be able to see thigns like which virtual card is used, and other connected data types that currently don’t exist.
Another one is how split categories are handled - I’d love to see that as multiple entries for data analysis rather than the current mechanism.
Publish some "Dashboard Templates" to help people use the data.
What it says on the tin really, but yeah, If you’ve not read “The Life Changing Magic of Dashboards” then I thoroughly recommend it
I know there’s a lot in that - and happy to expand on any of it.
My last thing though would be - Make sure the data is an accurate “Version of the Truth” - and by that I mean, I should be able to trust that when I calculate my account balance, the number is accurate. Right now I can’t do that. That would be my primary goal.
Merci
Edit: Conscious I’m treating both CSV and Google Sheets exports as the same topic - I know they are functionally different but I think they should reflect the same data so
Contrary to the usual, I’m not passionate about Google sheet or CSV exports.
Don’t get me wrong, I can Quattro Pro(!), {cough} Excel/GSheet like the pro’s - and have followed some pretty incredible takes on how to use this feature here on the forum - but…
I want the app to just work and not rely on any fragile app side-projects.
Give me selectable, drill-down reporting in-app from a top-level overview which just works and this will be the killer move. Trends is a very promising direction with this in mind. Please keep Trends at the forefront of development.
I have over-complicated, over-detailed and over-entered, financial data into multiple manual and online software & services over the last 4 decades to make sure I knew I wasn’t making a bad money call. It wasn’t even in existence in the 80’s, became available in the 90’s, became useable in the 00’s and became interesting in the 10’s
It’s now the 20’s and this is undoubtedly possible. Certainly by
Happy to work as a freelance consultant in personal finance data reporting development
The thing I really want is for Monzo to do all the best of all the budgeting apps I’ve used and not need sheets/CSV at all, or YNAB, Emma, Yolt, etc etc.
Yep, I’m not part of the Plus team and they are working hard on making Trends as great as we possibly can! I’m here working on this as a small side project to try and help out on the smaller areas of Monzo that could do with a little bit of shine (that are within the realm of a single engineer)
I do agree with what David says, but personally I just want the raw data. I can then do with it what I want, which I have. Graphs and tables for such niche things that Monzo would never put the time and effort into creating for everyone, and that’s fine, I don’t expect them to and most people aren’t like me and want to see all the data.
The main thing I feel is missing is unique identifiers for each pot that are not dependant on the pot name. I suspect this data lives in the backend somewhere, so a new column that exposes some of that kind of stuff would be great.
I haven’t used virtual cards yet because I’ve heard they can’t be tracked properly in the CSV, so this would be my next priority.
I know others have talked about wanting separate CSV exports for pots etc, but I think I’d personally like to see all of my monzo data in a single CSV with a column to indicate the origin of each transaction and a column to indicate the destination (with those unique IDs I mentioned). This would open the door to including transactions from pots, virtual cards, flex accounts, joint and personal accounts, even connected accounts(?), all in one ledger. The downside is that this approach would make the data less accessible as it would require a bit more work to achieve the kind of dashboards we’re currently creating:
Its too early on a monday for my brain to think it through properly, but there are probably good reasons not to follow this ‘all in one’ CSV approach. Like if I get a refund, the origin of the transaction would be the merchant and the destination would be my personal account. So to keep track of my personal account balance, I would need to be looking for all transactions where either the origin or destination columns include my personal account. Which, while probably achievable, sounds like a headache.
If you did go down this route, I’d suggest offering it as a ‘beta CVS export’ as an additional drop down option in the short term.
Thanks for the tag, and sorry for the late reply, away on holiday at the moment!
Personally I don’t really use the CSV exports. They were useful before the days if the Google Sheets integration because they showed more transaction metadata than the app, but as it stands right now I have little use for them.
I think what the replies here do show is that there really is an appetite for improvements to come to the Google Sheets integration. I know this is beyond the scope of what you’ve proposed @Moddingfriendly but it would be great if you could either take a look at some improvements yourself or lobby internally on behalf of the community for development time to be allocated towards these things!