David Watt (Instacart) - Forecasting Discovery - 2025-07-01¶
Metadata¶
- Date: 2025-07-01
- Company: Instacart (Expert Interview - David formerly at Sonder)
- External Participants: David Watt (Treasury, Instacart)
- Palm Participants: Emma Sjöström
- Type: Expert Interview
- Domain Areas: Cash Forecasting, Variance Analysis, Scenario Planning
- Recording: https://tldv.io/app/meetings/6863ff4c514b5f0013e179dd/
Summary¶
Context¶
Discovery interview with David Watt, who left Sonder ~6 weeks prior and is now in Treasury at Instacart. Emma walked through forecasting prototypes (forecast settings, scenario/assumption studio) to gather expert feedback. David provided deep insights on variance analysis, budget reconciliation, and outlier handling from his experience at both companies. Instacart uses Kyriba.
Key Discussion Points¶
- Forecast settings UI feedback: Don't start with settings page - start with numbers, drill into settings when something looks odd. "I don't know that I'd come in here first without seeing the numbers. It's very academic."
- Re-categorize from account page: Want to fix category while investigating variance, not navigate away to transactions view
- Scenario/assumption studio: Apply assumptions (e.g., payroll +3% annual raise), see visual impact, set effective date
- Variance analysis breakthrough insight: System should attribute variance to (1) actuals variance + (2) assumption changes. "You changed your mind three times... that should give you the majority of your variance"
- Budget reconciliation: 13-week direct forecast must align with annual P&L budget (indirect); translate growth assumptions with payment term lags
- Outlier handling: Mark outliers to exclude from ML training data
- Big client exception: Instacart has one client paying $20M/month in spikes vs $200k/day baseline - needs separate category with ML off, manual input from relationship team
- Forecast composition: Want to see forecast by source (ML vs manual vs ERP) to understand variance drivers
Pain Points¶
- Kyriba variance analysis difficult - "It's very, very difficult to go figure out how it was... what rule drove that balance"
- Can't re-categorize from variance drill-down - Have to navigate away to fix category errors
- Budget vs cash forecast mismatch - P&L budget uses accrual, cash forecast is direct; bonuses paid Feb/March for prior year
- Big vendor payment spikes - Can't use ML for clients with irregular large payments; need separate handling
Feature Requests & Needs¶
- Drill into settings from forecast numbers - see settings as "second layer" when investigating
- Re-categorize transactions from account page - fix errors while investigating variance
- Version saving - "Save July 1st forecast" to compare against later
- Assumption tracking - system tracks what changed and when, for variance attribution
- Actuals overlay in scenario studio - see recent actuals trend when building assumptions
- Stacked view by source - ML vs manual vs ERP for each category
Jobs & Desired Outcomes¶
Job: Explain forecast variance to stakeholders with clear attribution
Desired Outcomes: - Minimize the time required to identify what drove the variance (actuals vs assumption changes) - Reduce unexplained variance by tracking all assumption changes over time - Increase ability to attribute variance to specific inputs (ML, manual, external team)
Job: Reconcile short-term cash forecast with annual P&L budget
Desired Outcomes: - Minimize manual translation between accrual-based budget and cash forecast - Increase confidence that 13-week forecast aligns with budget expectations - Reduce errors from timing mismatches (collection lags, bonus payment timing)
Job: Handle large clients with irregular payment patterns separately from baseline
Desired Outcomes: - Minimize impact of payment spikes on ML predictions for baseline - Increase forecast accuracy by getting manual input from relationship teams for big clients - Reduce variance caused by client-specific payment schedules
Domain Insights¶
- Forecast = opinion that must be justified with facts - "I have to justify my opinions with facts... what was my opinion in March?"
- 13-week forecast extended to year-end - Even if focus is 13 weeks, extend logic to end of budget year for reconciliation
- Bonuses timing: Accrued in year earned, paid Feb/March following year - creates mismatch between budget and cash forecast
- Stock compensation: Budget includes total value, but stock-based comp has no cash impact
- Collection lag: Revenue growth doesn't immediately translate to collection growth - depends on payment terms (e.g., 60 days)
- Material vendor exception: Some clients are so large they need their own forecast category with manual input
- Kyriba workflow: Can drill into actuals, see component transactions, re-categorize inline - David wants this in Palm
Action Items¶
- [ ] Consider settings as drill-down from forecast numbers, not standalone page
- [ ] Add re-categorization capability from account/variance view
- [ ] Design assumption/version tracking for variance attribution
- [ ] Add actuals overlay to scenario studio
- [ ] Follow up with David when features are more developed
Notable Quotes¶
"I don't know that I'd come in here first. Right without seeing the numbers. It's very academic, just to kind of scroll through and see all the rules." - David Watt (on forecast settings page)
"The forecast is an opinion. Right about what the balance is gonna be. So I have to justify my opinions with facts... what was my opinion in March? That's very difficult to remember." - David Watt
"You changed your mind three times. And then also actuals came in different by this amount. And that should give you the majority of your variance." - David Watt (on variance attribution)
"They pay us. We pay we collect it $200,000 a day. They pay us 20 million a month. So you can't... you have to make sure you exclude them from the forecast." - David Watt (on big client handling)
"I think you're on the right track. I think it looks really good. I'm excited for you guys that this will be cool." - David Watt
Full Transcript¶
Date: 01/07/2025, 17:31
00:00 David Watt: It's pretty cool. Yeah, I've I've immediately figured out I don't need to go to as many meetings you know, there's a lot of like check-in meetings where I'm not sure if it's gonna apply or not. So, I just don't go and then I just quickly read the transcript, right? And you're like, No, they didn't talk about anything.
00:12 David Watt: I care about. So, You know I don't need to go if they do then I can follow up with the person you know on slack or something but yeah it's a pretty big time saver.
00:20 Emma Sjöström: Profit. I bet. But hey, so um, I bet you're still doing treasury but instacart.
00:29 David Watt: That's right. Yeah, so about six weeks ago, I left Sonder.
00:30 Emma Sjöström: Yeah.
00:33 David Watt: but Yeah, it's cards. Got you know they're profitable and we're growing and stuff so it's more more fun projects to work on.
00:55 Emma Sjöström: Gotcha, gotcha.
00:58 David Watt: um, yeah, I mean Eric and I would catch up on it, he was the primary driver and
00:58 Emma Sjöström: That sounds very interesting. So I'll try to keep that context in mind. That's actually quite cool. Did you get a chance to play around a little bit with the palm before you left or
01:14 David Watt: so, yeah, I haven't touched it in a couple months at least, so it's been, it's
01:15 Emma Sjöström: I know.
01:20 David Watt: been a bit
01:22 Emma Sjöström: know, very usable and actually something that ultimately Our customers feel, they can rely on to drive there. Primarily day to day. Operational, kind of the 13 week. this case, but also then looking a little bit beyond I'm thinking. Maybe I'll actually start by showing you a little internal picture that I've created.
24:28 Emma Sjöström: It's meant to sort of Conceptually capture, how I'm Thinking about forecasting in general for, for treasurers.
02:25 David Watt: Well yeah.
02:26 Emma Sjöström: Just trying to like really take into account. What are the building blocks of cashflow costs using modern technology? And also, what are the outcomes? That we're looking to drive. Building really great. Cash flow costs.
03:02 David Watt: Okay.
03:03 Emma Sjöström: So I'll try to be brief, you'll see on the this side. We just say cash management. And what we mean by that all the, you know, more showtime day-to-day, like operational, it could be days, two weeks, of course, depending on the company. But then the idea is to take outcomes all the way from this side, to the other end of the spectrum, which we call liquidity strategy, which is Maybe maybe it feels intuitive for you, as well.
03:34 Emma Sjöström: I don't know, but it's obviously the most strategic long-term initiatives planning and they're kind of I'm thinking interconnected. and there is no like,
03:44 David Watt: Okay.
03:45 Emma Sjöström: Universal like red line between the two or everything that goes in between. So I'm trying to think of it as kind of a continuum or a spectrum. Of potential use cases for cash for and outcomes. They drives. So How we are trying to do currently, right? Is you'll see.
04:06 Emma Sjöström: This is so this is not like a system map, it's more of a concept conceptual. What are forecasts and how can we build them? So, We're imagining three boxes in this diagram. There are the foundational inputs. We have the actual forecasting engine. And then at the top we have decisions support that should be driven.
04:30 Emma Sjöström: You know, us and output or an outcome from forecast? and all throughout we also want to focus on like governance workflow collaboration all of these kind of important building blocks that, you know, we don't want to lose track of
04:47 David Watt: Yeah.
04:49 Emma Sjöström: transaction has been categorized as payroll or some sort of collection, it can be like in one of 12 different types of collections. It will continue to be categorized that way. And we're also going to give users a lot more control in terms of kind of batch reccatheterizing transactions as they see fit and have the system learn from it.
00:00 :
06:09 David Watt: That.
06:10 Emma Sjöström: Configure out ones and then have easy workflows how to get that data in in the future, Of course, with, you know, love to integrate more directly, perhaps to other systems, for now we've understood that it's quite easy to export data. So, Will kind of learn from that for now.
16:06 Emma Sjöström: And yeah, so and but to support there are multiple use cases, of course, done from the short term or operational side, all the way to kind of, how can we support more long-term strategic planning initiatives and all of that. and then, once this, I mean this is already exists, right? But we were improving constantly across every box here or we want to start adding Enhancement? So you can think of it, kind of like forecasting studios scenarios, how can you as a user? But play around with this base data.
34:13 Emma Sjöström: And really, really, you know, customize it to your current reality, the interest
07:51 David Watt: Yeah.
07:52 Emma Sjöström: rate. So yeah. Whatever. Right. Could happen. So That's a little bit.
07:58 David Watt: I'd say reconcile it to other forecasts too, right? That's a big part of what we do. Is you've got your base forecast, but somebody else has a different and end result, and you have to figure out why they're different, right?
08:09 Emma Sjöström: Yeah, that's a really cool use case.
08:12 David Watt: Yeah.
08:16 Emma Sjöström: So where I'm a little bit trying to do some discovery work right now. isn't this baseball cost layer when it comes to kind of How would you as a use like to be able to configure the behavior of your forecasts basically? And I'm going to show you a Prototype.
08:42 Emma Sjöström: That I made. and I just want you to be very like transparent and speak really
08:52 David Watt: My specialty.
08:54 Emma Sjöström: R&D expenses. You the idea being here that you could at a global level, you know, kind of just say that. Okay here, you know, I want I just want to. manually upload this because I get these numbers from my colleague over there and they're more reliable anyway, Than the machine learning.
00:00 :
10:11 David Watt: Yep.
10:13 Emma Sjöström: Or perhaps you'd be able to kind of this one. I do apologize. I've been iterating a bit so the idea being you can turn off machine learning Completely right. Or you could have a mix. so, let's say you You'd like to have both. So that's one option.
10:35 David Watt: Okay.
10:37 Emma Sjöström: Allowing you to drill into kind of the account level, or you could just go to accounts directly and ignore the four, to three categories. But, you know, just kind of see exactly for each category, body account, what your settings are. I personally feel. This UI is a little overwhelming but just trying to capture the concepts.
36:19 Emma Sjöström: What what? Like it's spontaneous. Thoughts here from your side.
11:20 David Watt: And then, I Find a number that looks odd to me. And then I, you know, that's where I want to double click in. How do they arrive at this number? And so that if I double clicked and then it popped up something like this of like, well, there's Two rules that are generating this balance and one is yeah, X.
36:08 David Watt: And the other is why This would be helpful. As like that second layer.
12:09 Emma Sjöström: Mm-hmm.
12:09 David Watt: I don't know that I'd come in here first. Right without seeing the numbers. It's it's very academic, just to kind of Scroll through and see all the rules. Right? Like well, okay, but if there's 10 Rules But they're all times zero and it has no impact on the forecast.
12:24 David Watt: I don't need to learn them right. Like But this would be pretty cool thing. If it You know, because that's the challenge now of like having to either follow through a formula in Excel or with Kariba, it's very, very difficult to go. Figure out how it was. You know what rule? Drove that balance.
12:41 David Watt: You can see, oh, it's a forecasted item, but Yeah, that's that's one of the challenges right now. I have
12:48 Emma Sjöström: Gotcha. So just starting out, just getting that general understanding. so, imagine
12:55 David Watt: Yeah, because I guess on here, right? Like there could be a lot of rules, they're not applicable. Right? If it's 30% of the prior months, whatever, but the prior month was zero, I don't that rule is going to result in zero. Or it could be immaterial if, you know.
13:14 David Watt: So how would I Know which one of these rules is actually material to the forecast.
13:26 Emma Sjöström: That's a good point. so, you would
13:28 David Watt: I'm going to focus in on those five, big items right to start with at least.
13:32 Emma Sjöström: Yeah. So, imagine you would like at Instacart, right? You would have palm Just just for fun, right? So you would have this and Palm would out of the box,
13:40 David Watt: Yeah. Yeah.
13:44 Emma Sjöström: I'm in a demo account now, right? It would You know, look like I don't know, let's take some account. You would get something out of the box for your accounts. Perhaps this. And from here you'd want to be able to let's say Oh this was a big gap. You'd want to be able to from this view kind of see perhaps that like the Category.
39:11 Emma Sjöström: Level what exactly the settings were or is that is badafi helpful?
14:21 David Watt: Right. That's yeah, that's how I think about it, right. I'll start with the numbers and figure out where the big changes are And then go to the, why did they change?
14:32 Emma Sjöström: Gotcha. And then once you've understood the change, would you prefer configuring it directly from the irrelevant account page for example?
14:45 David Watt: Well, so like right now. A lot of what I do is even on the actuals. I'll go in and look and say, Oh well, the actual Got coded to. Vendor payment. But really, it was a stock option repurchase or a stock repurchase, right? So, It's not that the forecast is wrong.
27:16 David Watt: It's at the actuals were coded in correctly. So that is a nice part about Kariba as you can drill into it and you can see, Oh, here's what makes up. That, you know, I thought as me 10, it turned out to be 20. You can click into the 20 and you can see.
40:15 David Watt: Well, it was 10. There were two transactions, a 10, or in it, you know, 11 and a nine.
15:25 Emma Sjöström: Yeah.
15:26 David Watt: And the nine was actually, you know, I can just change the coding right there and say no this was actually share repurchase. So then I'll change it and I can refresh it and then it's like, Oh well you thought as me 10 it turned out to be 11. That's a much smaller variance.
00:00 :
15:38 Emma Sjöström: Gotcha.
15:39 David Watt: capturing things correctly. I haven't even moved forward yet into what I think the future is going to be.
15:53 Emma Sjöström: Gotcha, what was the name that what was the system you use and? You set us to.
15:59 David Watt: Or using. Yeah, they're using Kariba as well. It Instacart
16:02 Emma Sjöström: Yeah. Cool. I think that's actually really cool feedback for us also. So right now we don't really offer at the account level, the option to perhaps re-categorize this transaction, right? So we we have the drill down capabilities. Like, Oh, what are these actuals? Okay. Cool. Get these in the company transactions.
16:24 Emma Sjöström: And one of them is actually not correct. It's not an in the company or it's it's something else.
16:33 David Watt: Without so that would be helpful. Kind of just getting also the forecast in order. Initially to do it here. change the coding right there on the screen and and then save it and then update the forecast to rerun
16:52 Emma Sjöström: Gotcha, we have.
16:53 David Watt: So, it helps helps you clear your variances quicker?
16:55 Emma Sjöström: Yeah, we have it on this transactions view where you can kind of edit your your category and and so on.
17:02 David Watt: Okay.
17:03 Emma Sjöström: But is it am I correctly hearing that it would be helpful to you know kind of you're in your workflow. You're investigating your transactions and boom. This is where you encounter an issue. So you'd like to do it here rather than
17:18 David Watt: Yeah.
17:21 Emma Sjöström: Navigating away.
17:21 David Watt: Yeah. I've I'm drilling through the variance to see what made it up and if I find, oh that's clearly there, you know. You know, something else and it might be. It's not the coatings wrong, It might be that in my forecast we called it something different right again. Maybe it was acquisition or something, right? And so we have it on a separate line.
00:00 :
17:44 Emma Sjöström: Mm-hmm.
17:45 David Watt: could have known otherwise, but I know in the forecast, it's on this category so I just want to click and put it right to that same category.
17:55 Emma Sjöström: Gotcha, gotcha. Nice. okay, but so imagine you've done all the work, you feel like fairly confident in terms of your base forecasts, we can call them and you feel fairly confident that it will like creep in this case continued and maybe Preserving the categories if you updated, some rule here and there and all of that.
00:00 :
18:21 David Watt: Yeah.
18:25 Emma Sjöström: how would you prefer to kind of manage that once you like in, once you've gone through all of that and then you kind of arrive to the point where, you know, these are the behaviors that are troublesome for our forecast and I would like to amend those
19:05 David Watt: So payroll is a good example, right? Because they'll generally be an annual raise. so if you're looking backwards, you're gonna say, Oh, it's always a thousand pounds, you know, on the second to last business day, but I if I know well there's a everyone's getting a 3%, raise At the end of July.
19:25 David Watt: Like how do I go in and bump it up by? You know? Hey take June times 103%,
19:28 Emma Sjöström: Got.
19:31 David Watt: right? So And that's just a one time, you know? Then from July, it'll be steady again, right? Like, it'll just go up and then keep going to that level. That's always been a hard thing to do.
19:45 Emma Sjöström: so that
19:47 David Watt: In a system for me.
19:48 Emma Sjöström: So that sounds. Now I'm just gonna jump straight into something else, right? I think This is also very interesting to talk about. I'm happy to just do a little bit of a holistic around it. Would you if you're okay with that. So moving a little
20:02 David Watt: Sure.
20:03 Emma Sjöström: bit from the kind of what I'm trying to emission more like a baseline setting in terms of like, Does it like the forecast composition by source, right? Is it coming from machine learning? Is it coming from some other data source?
20:16 David Watt: Yeah.
20:17 Emma Sjöström: Really.
20:47 David Watt: Annual raise or whatever? Yeah, yeah, there you go.
20:50 Emma Sjöström: and then you do like a fixed amount and that would be like A million, I don't know. And then you could say that this is the new baseline. Now,
21:04 David Watt: And when does it take effect?
21:06 Emma Sjöström: Good question. I'll show you. I get, let's see if there's even works. It's a prototype. Let's let's hope it. Let's hope it works. I'll save my assumption
21:11 David Watt: Okay.
21:14 Emma Sjöström: Right now.
21:47 David Watt: What? Sorry, though. We made it. We made payroll go down by a million per month.
21:53 Emma Sjöström: so, this
21:53 David Watt: Without assumption.
21:54 Emma Sjöström: Yeah.
21:55 David Watt: That's why it's going from 12 to 0.
21:57 Emma Sjöström: Yeah, it's it's a it's not perfect. I'm a well aware numbers. Imagine you'd see
22:01 David Watt: Okay. Yeah.
22:04 Emma Sjöström: the kind of effect on your forecast just like okay. I i so it should. Yeah, I should just increase here. But like, yeah.
22:12 David Watt: Yeah. Like a stair step. It would just go up and then stay flat again, right? Yeah.
22:15 Emma Sjöström: You're? You're you're absolutely right. I think this is kind of how it would affect your balance. Or something.
22:26 David Watt: Oh, okay.
22:27 Emma Sjöström: But that is a very good point. Likely you want to maybe see this data from different angles? Or like Yeah. But so there was a right again, very early prototype by with me.
22:37 David Watt: Yeah. Okay.
22:43 Emma Sjöström: like, you know, say, you know, like this and then here is for now whether you know, change would take effect, it would start at This date. Would make sense of course to have it here or say that it's not just 12 month, it could be, you know, new baseline doesn't stop for example.
35:37 Emma Sjöström: but the idea here is just like, okay, how can you kind of Do this assumption driven adjustments to your forecast. And then for example, if this looks good, it doesn't. But let's say, Oh this looks great and makes sense, and you could just kind of Apply it to your baseline forecast and now this is your new forecast.
49:41 Emma Sjöström: however, with the visibility of all your assumptions that have gone into it,
23:36 David Watt: Yeah.
23:37 Emma Sjöström: So that's something we're also. This is very, very new just playing around with it a little bit trying to figure out what would be To bear use, like minimum usable version of this so that we could in the future start iterating, more of course. but something like, perhaps you could collaborate with your colleagues on
23:55 David Watt: Yeah.
23:58 Emma Sjöström: different assumptions and then, you know, You know, save us was the best base case scenarios or or things like this so that you could always kind of depending on your anticipated risk or whatever you could. You could choose one forecast, I kind of Feels best for you rely on.
00:00 :
24:19 David Watt: Oh, yeah. And the way you're building, this makes me think they're reconciliation. Be very easy, right? If you could You have your baseline, but if you can save a base, you know, baseline as of July 1st. And just save that version.
24:32 Emma Sjöström: Mm-hmm.
24:32 David Watt: And then a month from now, I'll have baseline as of August 1st. And then I could hit recent reconcile, right? And you're gonna be able to spit out, Hey here the major differences one you've got a month of actuals And then two you change these three assumptions or whatever, the changes were
24:45 Emma Sjöström: Yeah.
24:49 David Watt: over the course the month, right? Because that's a very, you know, at the very minimum you're gonna have the actuals to forecast variance analysis. But often I'm having to reconcile between today's forecast and forecast from three months ago. which is that's more difficult because about there's, you know, Certainly actuals happened but also along the way.
25:08 David Watt: People have said, Oh hey don't forget about this and you learn something about that and I like, if you're doing it like this, where you're building the rule and then testing it and applying it, I would think the system's tracking all those things so it'd be pretty easy for the system to kick it back and say, Well you You added these, you change these three assumptions over the course of the last period.
00:00 :
25:32 Emma Sjöström: Yeah. So
25:33 David Watt: And it had and it had this impact on your numbers, right? So you could attribute the variance to some of it was due to actuals and some of it was due to assumption changes, right?
25:43 Emma Sjöström: Super cool. All aligned. I agree actually, that would be one of the use cases for sure. I think that's a really relevant point and
25:50 David Watt: Yeah. Yeah. Because then you get into it like, well, that's why, since the last what about
25:54 Emma Sjöström: Yeah.
25:57 David Watt: versus the annual budget that we set in January? Right? But that would be easy toggle just to say, well versus you just pick which version of the forecast you want to compare to, right? So,
26:07 Emma Sjöström: Yeah. So, for the budget, I'm also very curious right? Because that's very typically high level stuff. So, let's say you'd have a tool. Like this. Would you try to create a forecast to kind of align with or reconcile with a budget based on? The same drivers or assumptions that we used in the budget.
26:33 Emma Sjöström: Or would you want to like,
26:36 David Watt: Yeah.
26:37 Emma Sjöström: Overlay it or do something else with it?
26:43 David Watt: Typically, I have to conform to the budget, right? So when they said they set
26:45 Emma Sjöström: Yeah.
26:47 David Watt: the budget, It's usually gonna be an annual, you know, by month or something. Versus a Treasury. Look of you mentioned earlier, 13 weeks, right? But yeah, you kind of have to Align them. and so, my 13 week view has to kind of end at where the first quarter of the budget says, it's going to be And so forth.
27:07 David Watt: Like and that's where You know, that's one of the first things I did here at Instacart 2 is that we have a 13 week forecast before I joined, right? Everybody has one. In the procedure was every week, they would add a column and pull the phone. You know, the forecast forward one week, and then they'd go replace the column of actuals, you know? and so, Just mechanically.
27:30 David Watt: I was like, Well, just extend your ad 35 weeks right now, so take it to the end of the year. So you don't have to insert a column every single month, you know, every single week actually. And because that gives you a view. Yes. You're it's a 13 week forecast but the logic applies to the end of the year.
27:51 David Watt: So you can you can then You can reconcile that to the budget, right? Because it's not perfect, and you don't look at it real closely but The 13 weeks should have been built out to go to the end of the, you know, end of the budget year kind of thing.
28:08 David Watt: So you, so you, you know, if the start, if they've done that start a year, you would try to make the whole thing. Even though it's a 13 week forecast, you try to tie out the whole year to the budget, right? That's kind of your starting assumptions.
28:25 Emma Sjöström: But how would you do, like, would you do it on an assumptions basis? Then like,
28:26 David Watt: so,
28:30 Emma Sjöström: hey okay, so budget expects and increase, and Sales. So like, how would you be XYZ and would you is that the kind of
28:37 David Watt: Yeah.
28:40 Emma Sjöström: assumptions that you would take from a high level and try to just Spread it across your cash forecasts, no way. That makes sense to you, and then kind of Save that context somewhere. So you remember like how would it? How do you actually do it?
28:55 David Watt: It's tricky. Yeah. Because often the budget is done.
28:57 Emma Sjöström: All right.
28:59 David Watt: You know, in a different manner, right? So again, the 13 week forecast is going to be a cash. It's direct forecast, right? Where you have collections and disbursements and then ending cash balance. Usually, the longer term forecasts are more on an indirect basis, right? Where they start with net income and derive cash flows.
29:20 David Watt: Budgets often. Will be broken into pieces, right? They'll be an expense budget. That's done one way in a revenue budget. That's done another way, but yeah, that's the art of it is trying to You know, hey, here's our P&L budget for the year. And you have to say, Well, what would that look like on a cash basis? Right.
29:43 David Watt: And so yeah you kind of have to break it down like okay well If revenues are growing 3% or 10% or whatever. Is there any reason to think the collections wouldn't grow the same? And there could be lags, right? It depends on your sales cycle.
30:00 Emma Sjöström: If you have like and your payment terms right, like how how soon you collect. So I
30:06 David Watt: Exactly. Yeah. Right? So that would be a lag, right? We're revenues are gonna go up but collections will trail. They only increase 60 days later or whatever the terms are. it's in the same similar on the expenses that Expenses are typical right? Because they're gonna be done. Typically on a cruel basis of cash is different.
30:27 David Watt: So, You know, you'll have things like the annual payroll increase. You can build that in there, okay? Well before he gets it on average at 3%, raise we should add build that in. But they also will budget for bonuses and stuff, right? Which is non-cash, essentially So, it can get tricky.
00:00 :
30:49 Emma Sjöström: How is that?
30:49 David Watt: Sometimes above.
30:51 Emma Sjöström: Explain it to me. Like, How is that? What do you mean that bonuses are not non-cash? In this sense? Is it because it's based off on performance or like
31:02 David Watt: It depends on the company, but For one thing, they might pay the bonuses in stock.
31:08 Emma Sjöström: Ah, culture.
31:09 David Watt: Or you know even a portion of your compensation, right? The budget will be on the total value of something, but if people are paid in stock, there's no cash impact.
31:18 Emma Sjöström: That's fair.
31:20 David Watt: Or even if it is a cash bonus. And again, individuals you don't know. You're right. Everyone's it depends on your performance. So if it's a good but if it's a good bonus anyway, it should, it doesn't make sense to have a bonus for, you know. For everybody, if they're what's the incentive then, right? But the bonuses will trail, at least in the United States.
31:43 David Watt: Bonuses are typically paid in February or March.
31:46 Emma Sjöström: Okay.
31:46 David Watt: For the prior year. so you'll have this disconnect in terms of like, well, the budget for this year is going to include 10% for the bonus pool. But the bonus that's paid in this year is actually for last year, right? And so, you know, they'll be a big lump payment, early in the year for last year's bonus.
32:05 David Watt: But then you have to just down the budgets. For the rest of the year because only, you know, 10% of that is for next year's bonuses, not actual cash. It'll get paid out this year.
32:17 Emma Sjöström: Gotcha. So just a question. And in this context, imagine you're in some sort of
32:18 David Watt: Yep.
32:21 Emma Sjöström: studio like this and you're doing your You're trying to model out your cash forecast to align with what you know about the more high level budget and so you won't by. Now let's say it's February and you know by now. Okay, now it's time to do that cash pale for the businesses.
32:41 Emma Sjöström: Would you like to do in basically just here at a one-off.
32:47 David Watt: Yeah.
32:47 Emma Sjöström: For the relevant category with a context, like saved us on assumption and and just kind of insert that.
32:55 David Watt: Yeah, exactly. What once it's known. I've just put in the amount like oh, they'll know. You know, pretty well before employees, find out what your particular bonus is. The total bonus is gonna be determined, right? So they can say, well put in 20 million for the end of March or something, right? And
33:13 Emma Sjöström: Very nice. So the lagging bit I find interesting also, would you prefer? Now I'm very nitty-gritty just that you know, let me know if it's too too deep but So if if I know, you know, when average, it takes 45 days for us to collect, would I just, you know, face my start date on.
33:32 Emma Sjöström: So if if the budget says all for the year, this is the expected increase, but I just kind of Adjust for the lag here, in the sense that. Okay? So then it would, then it would start like mid February, ish. And that's when we can expect the increase in collections or starting to see it.
33:51 Emma Sjöström: Is that roughly?
33:53 David Watt: I mean, we could. What I would typically do is
33:54 Emma Sjöström: Or have.
33:57 David Watt: Because you're always getting actuals as well, right? So if revenues are gonna go up, 10% this year, All else equal I would increase collections by 10%. And then but then you have to look at the timing of the revenues, right? So if it's smooth, Every quarter go or every month goes up the same.
34:19 David Watt: Well that's pretty easy, it's trickier. When there's like well we're launching a new country in June And it's going to be 20% of our volume, right? So that's where then you have to get into. okay, well, if you're gonna launch you know, China in June Well then those the bump into collections won't happen until August or something, right? So it depends on how the growth is being achieved.
34:48 David Watt: I try to There's very few I found very few kind of stair. Step items in real life, things move kind of gradually. So, But the exceptions could be something like launch a new product or launch a new geography or something, where it would go from. From some baseline to a new hire line.
35:09 David Watt: But it's typically I try to leverage it off of. You know, again. Usually, the budgets are gonna be on a P&L basis. They're not a full cash flow.
35:16 Emma Sjöström: Okay.
35:19 David Watt: So they're gonna say, well, revenue will go up. 10% So, I'll just Increased collections 10% kind of smoothly. Unless there's something specific they're going to tell me.
35:31 Emma Sjöström: Gotcha.
35:32 David Watt: That's kind of how it.
35:34 Emma Sjöström: Yeah, that makes sense. Would you like to also I'm just throwing some ideas There, would it be helpful to in a context like Something like this. Overlay, you know expand this graph and see like the actuals you've had coming in recently as well and see how those are trending and if that's it's not something that would be helpful, as some sort of decisions support in terms of your modeling.
00:00 :
36:03 David Watt: Yeah, for sure. I'd always want to see the last couple months of actuals if I'm going to change the forecast, so I can kind of get a reasonable this. Check for You know, has it been real smooth and that's what I've been doing. Charts are great because you can lay it out and say, Well, here's what it's been, and then here's what I'm expecting, you know, like Wait a minute, Why would it be You know, if it's been relatively flat, why would it now bounce up and down up and down up and down? Like that doesn't make sense or
36:30 Emma Sjöström: Yeah.
36:31 David Watt: So yeah I find charts very helpful. That's when I'm building the forecast. I build a lot of charts just to make sure I'm not Even if you're off by 5% every month, it can start to, you know, flat line, and then just start trending up or trending down. You're like, wait a minute, something's going off here, right? Like so yeah, I think I find that always very helpful to Look at what the actuals have been recently and then see what I miss.
36:54 David Watt: You know, the assumption I'm changing and how it impacts things.
36:59 Emma Sjöström: That's really cool. And you would be, let's say in a first version of something like this just having that visual, if I'm hearing correctly, just having that even that visual support to see the behavior of your actuals to guide, you would already be
37:13 David Watt: Yeah.
37:14 Emma Sjöström: helpful.
37:16 David Watt: Yeah, and even like this where you're You know, we're typing in numbers to say, Well it's gonna go buy a million starting next month, but it's a visuals easy to. Is that what I meant? Right, like did it goes up once or that it goes up a million every single month? Like,
37:28 Emma Sjöström: Yeah.
37:31 David Watt: Oh wait, that's a very different picture. You can quickly, make sure you've
37:34 Emma Sjöström: Yeah.
37:37 David Watt: gotten gotten it right, with just a double check.
37:42 Emma Sjöström: Super cool. So I'll obviously, if you have time, if you love once these ideas crystallize a little bit, it will take a few months, I'm sure, because we're busy now building. Yeah, the other layers, but this is something that we really much looking forward to start building out in palm to give As much flexibility and easy UI, as possible to kind of achieve these.
38:05 Emma Sjöström: Just quick fast like, you know, be it for sanity checking or creating a new forecast, or creating some different scenarios that you can choose from. It's something we really want to do.
38:16 David Watt: Yeah. Yeah. No, I like it. I like, and again, I'm I'm excited. The hardest part of forecasting is the, you know, the variance to to actuals versus forecasts variance analysis, right? So or forecast to forecast variance analysis.
38:32 Emma Sjöström: Yeah.
38:35 David Watt: And I think the way you're setting it up would make that real doable.
38:39 Emma Sjöström: So you you would love, love is a strong word but like to provide like context. This is something I'm interested in actually. So let's say you had an assumption and this goes into your forecast eventually You'd want to keep the context for your variance analysis, purposes or your forecaster forecast, variance analysis.
38:58 Emma Sjöström: Is that just out of curiosity? Other than like, you know, I can explain here.
39:00 David Watt: Yeah.
39:06 Emma Sjöström: Right. if the other type of, like material or or anything that you would find, You know, helpful being able to touch here. Like what's kind of context that would be helpful to quickly kind of are, right? That was the assumption. This is the decision.
39:26 David Watt: Yeah, this is I think the right idea, right? When you put in the the new assumption, you're gonna say, You know, based on updated. July budget or something, right? Or you know, from Fpna and I'm gonna put a date. July 1 2025, Right? So Because I always have to kind of feel like I have to justify.
39:46 David Watt: You know, the forecast is an opinion. Right about what, what the balance is gonna be? So I have to justify my opinions with facts, right? And well, here's why I had that opinion. It's very easy when you're doing it today, but You know, especially when you're comparing like what's today's forecast versus marches and it's like what was my opinion in March? That's very difficult to remember, Because you've learned things over the last 90 days, or whatever.
40:12 David Watt: So these kind of things, you know, like and that's where I would even say, like being able to save a version of the forecast and call this, this is the July 1st forecast, Or the Q3 forecast or whatever you want to call it. So then you can compare the July forecast to the June forecast.
40:31 David Watt: And then the system could easily tell you, right? Like, Well, you added three assumptions over the course of June. And then your variance, you know, versus actuals with like those would be your first two splits, right? Like, How did I miss as well? You changed your mind, three times.
40:47 David Watt: And then also actuals came in different by this amount. And that should give you the majority of your variants, right? So And then there, if there's anything left, right? There's always the unexplained variance, right? There's like, Okay, well, what else did my figure out right, but that has to reconcile that down to the material amount.
00:00 :
41:09 Emma Sjöström: Gotcha. Very cool.
41:13 David Watt: Yeah.
41:14 Emma Sjöström: So I remember just the final thing, I remember it was a while since we spoke but when we spoke about machine learning and I'm jumping a little bit and different thing when we spoke about machine learning in forecast, You, you did express that it would be good being able to exclude outline like outliers for example, to have them not being fed back to the model and possibly skew the forecast moving forward.
00:00 :
41:45 David Watt: Yeah.
41:48 Emma Sjöström: And we agree obviously and this is very basic. Okay, imagine this is a forecast page in Palm essentially this page, right? We want to, you know, come up with ways to help help you identify potential outliers. I broke my prototype a little bit, but one idea being like already in the chart.
42:14 Emma Sjöström: You could somehow maybe Identify potential outliers and help the user. Like Oh, Maybe there is something off here in terms of how this data typically behaves for a category or whatever. and then if you click into your actuals, Where you see all your transactions for the week. Or imagining, I'm just going to keep moving us around.
42:43 Emma Sjöström: You know, it's as outlier but imagine you could say, possible Outlayer here, okay? Or this for accounts, payable the system have identified as a possible
42:49 David Watt: Yeah.
42:55 Emma Sjöström: outlier. and then I also use it could just you know, okay well then You're not gonna be included anymore and future like in a training data sets, you won't skew any, you know future. Broadcasts. What?
43:13 David Watt: I think that's pretty cool. Yeah, because there's definitely things that You forecast separately, right? So Yeah, being able to go find those ones in the past and remove them. I think gives you a better you know, the machine can do the baseline forecast and then you can You might, you know, you said earlier, right? Somebody's giving you an input for this particular item going forward.
43:35 David Watt: So you want to use their input for that. And machine to do everything else, but you've got to tell the machine to ignore that category or double counting, right? So,
43:45 Emma Sjöström: Yeah.
43:46 David Watt: that's,
43:47 Emma Sjöström: Imagining like a one-off for a big severance pay or something like that, and then you would want to add it to your forecast. You know, take it into account and everything. Keep the actual but please if you use machine learning, For this excluded.
44:03 David Watt: Yeah. What instacart we've already run into one where we have one client. That pays us. On their own schedule and they in the amounts are very material. So like you kind of you have to kind of do the forecast for everybody except for them and then you have the forecast for them.
44:20 David Watt: Right? But if you include and they pay just in big spikes, like they'll pay us. We pay we collect it. $200,000 a day. They pay us 20 million a month. So you can't, you have to make sure you exclude them from the forecast. You know, because it, you can't assume it's gonna be a million dollars a day, it's gonna be 200k a day.
44:41 David Watt: And then you have someone else, tell you like, okay, they're gonna pay us on the 21st. or, you know, there's a team that manages that relationship
44:47 Emma Sjöström: God.
44:50 David Watt: so that would be the example for us immediately of like okay well this vendor is Bigger than all the rest and has his own payment schedule. but yeah, there's lots of other vendors that the machine can add up and, you know, Average over time.
45:06 Emma Sjöström: That's right. That's actually a really good example. Thank you. And typically there's the the accounts that collects these are the same like it can be one account for. Yeah.
45:17 David Watt: It's just this is the biggest vendor we have in that particular market, right?
45:18 Emma Sjöström: Good.
45:20 David Watt: So they And they know it so they pay on their own schedule.
45:30 Emma Sjöström: That's that's really cool. And then I imagine like for visual aid, in those cases, it would even, you know, There would be some spikes here in this weekly or whatever granular like time timing you're looking at but you would see the spike already in the chart and you could just like Oh there we go.
45:48 Emma Sjöström: Click it and make sure that it's excluded from the training data.
45:53 David Watt: yeah, and so like with Kariba we do is we would create a different category for that vendor
45:58 Emma Sjöström: Right. Yeah.
45:58 David Watt: But then the actuals come in I have to go and like that guy saying I'd have to drill in and say Oh no, it's not. Collections. It's this particular time. So it would you know, that's what we have to do is go. Change the category and all the historic ones.
46:12 David Watt: So that we can see the baseline is $200,000 a day and then we have this
46:15 Emma Sjöström: Go.
46:17 David Watt: You know a big spike once a month for this one vendor because then you can forecast both of those separately. Right? Like okay well now I know my baseline's 200 and Someone has to give me the forecast for the big guy.
46:28 Emma Sjöström: Gotcha. So, going back. Now, I'm just moving back important, like a crazy person. We're going back to the forecast, overviews and the settings for the forecast. Let's imagine this was the account. We looked at And you were looking at your Sales revenue, perfect.
46:45 David Watt: Yep.
46:47 Emma Sjöström: And let's say this is the category you created for those. Transactions. The, you know, huge inflows. Would you like if that was an option? Would you then? Okay, so we created this category for this big client. It's always categorized as way. And now, I'm in the context of palm, you know, using our categorization engine.
47:06 Emma Sjöström: So, it's always going to keep being categorized that way. And for this account for this category, I just want to turn off machine learning altogether,
47:16 David Watt: Yeah.
47:17 Emma Sjöström: rather have like, A reminder that I need to add a number manually to the full cost or something like that.
47:24 David Watt: Exactly. Yeah. Because that'll come from the team, right that that vendor has its own special relationship. So yeah.
47:32 Emma Sjöström: Yeah. That's also super cool for me like use case. I love hearing These like real world use consists for like having that level of control.
47:39 David Watt: Because that's gonna be a big one too, like when you're doing the variance analysis, right? If they say, Well, why do we miss so badly? And you're going well The sales management team told me, You know, Vendor X would pay on the 21st and they they didn't pay till the third.
47:56 David Watt: Right, that's there's nothing Treasury can do about that, right? It's like, Hey, those guys are dedicated to who's responsible for that, They told me something. It didn't happen. That's a variance to the forecast but it's not a Treasury problem. Like there's another wrong in the forecast, right? It was just an input error.
48:13 David Watt: And they, it was their best to guess, right? But that's Different category than like Well why is your forecast always too high? Right? So
48:23 Emma Sjöström: Yeah, and you would know like what team to reach out to to try and, you know, I got. Yeah, gotcha.
48:28 David Watt: Yeah. That's where your comment box would be perfect. Right? You know, per David in, you know, team on July 1st, right? Like you put in there when you got the assumption so they could say Well I didn't You know, sometimes you get into this like well we knew they were going to pay us like well you didn't tell me you know, so like that's what was in the forecast because that was my last input.
00:00 :
48:51 Emma Sjöström: Yeah, no, it makes perfect sense.
48:54 David Watt: Yeah.
48:55 Emma Sjöström: Nice. So one final thing that was just on my mind because I remember you also saying, Okay? So if I have a forecast it's Has different building blocks in it and building blocks. Being Let's say it's machine learning, it's in the futurism ERP or external system integration that could be manual.
49:20 Emma Sjöström: One-offs in it, that could be, You know, me uploading and file that contains all of this particular sales data for this customer, for example. Oh well, we're expecting. These numbers that coming six months. Would you expect to like at this? Page here for your forecast. see, the kind of Come that composition essentially.
49:46 Emma Sjöström: Of your forecast, and Why, why is that helpful? just it just
49:52 David Watt: Like a stacked bar instead, so you'd see like, well, I'm forecasting. A thousand and 500 of it's from machine learning and 300 from Some x and 200 from Y. Yeah. Again, I'm trying to think how I normally do it in those scenarios. I would usually have separate categories for each so I can see them individually.
50:17 David Watt: And then the other be a total category as well. But Because yeah, if they're operating differently. It helps me to, to see them separately, right?
50:28 Emma Sjöström: So you would am I hearing correctly? Like for example you'd like to see My categories that are not machine learning predicted, for example. only, or
50:41 David Watt: I guess I'm saying is, if I have a fork, like a collections forecast, And there's three different types, you know, in the in that, right? Like I said, machine learning is one type. Input from another department is another type and then Treasury assumptions is the third type. Yeah, I think I just showed them all three separately.
51:01 David Watt: You know, it could be three lines, and then a total line on top or something, right? But you'd want to see Where the very, you know, again I always assume you're gonna get it wrong. So You've got to show them. By the source. So that when the actual is rolling, you can figure out Which one would you know, was off?
51:20 Emma Sjöström: Yeah.
51:22 David Watt: Or if there's a going forward, if there's a big change, you can see which ones driving the change, right? and double, then you can Double check. Why is that a real change or not? That's kind of how I think about it.
51:38 Emma Sjöström: Yeah, makes sense. Very cool. I think for me this is super helpful already. So I'm
51:48 David Watt: Yeah.
51:48 Emma Sjöström: You know. I'm not gonna.
51:52 David Watt: Well.
51:54 Emma Sjöström: I'll give you five minutes back. Oh, now I think the You isn't my Internet. Not they are, you're back.
52:06 David Watt: Now, yeah, we froze a little there. Yeah.
52:08 Emma Sjöström: Yeah. So any do you have any like Other thoughts or anything that you feel like would be really, really helpful. In terms of cash flow costs that we didn't. Mention or talk about today.
52:27 David Watt: No, I think you're on the right track. I think it looks really good. I'm excited for you guys that this will be cool. I'm glad to see it. Come on.
52:34 Emma Sjöström: Thank. You, I do hope we can speak again. I think it's super valuable. If and when you time try to make sure some more
52:44 David Watt: Of course.
52:46 Emma Sjöström: Live features to show you by done.
52:49 David Watt: Yeah. Yeah, please do. Let's let's set up in a time when you're ready.
52:52 Emma Sjöström: Yeah. Thank you so much. This was really, really helpful.
52:57 David Watt: Okay, well, you're very welcome. Emma. Have a good evening.
52:59 Emma Sjöström: Thank you and have a good day.
53:01 David Watt: Bye.