Module Discussion

custom modulesdiscussion
2 posts / 0 new
Last post
matt.tapps A+ 1
Module Discussion

Hey everyone,

I'd love to see more discussion around financial modelling with Modano here so I thought I'd post a module I made for a theatre company that I am treasurer of.

The module allows you to input show dates and some base assumptions like ticket price, venue capacity and utilization, and calculate the expected revenue from the events and the royalties COGS. I have considered building in more COGS assumptions to this to allow for easier future show forecasting, however I recently read one of the blog posts here (Ten Commandments of Financial Modelling) that discussed not making megamodules so I'm a bit dissuaded from this, and may instead split these out into more modules that link to each other.

The module also makes use of a technique for two dimensional categories that I grabbed from a post here, allowing bar assumptions to be added easily if different items are stocked.

Would be keen to hear feedback as I'm sure I haven't built this as well as it could be built, or see some examples of cool things other people have built too!




Jun Yan A+ 124

Hey Matt,

Cool stuff, and great initiative, something I keep saying I'll do and never actually get to! Lots of distractions are now gone, and I'm going to focus on getting more content out for the community.

This is a great start at building a module, and it certainly hits at the commonly asked question of "What's a Module vs. component vs. category”. You can break the items out to say volumes, revenue & cogs if you wanted to, it may make referencing within formulas hard, so make sure you are at an endpoint in your calcs such that they can be sent out to another module. I do think there are probably some rule of thumbs, but I think this one might come down to experience working with various structures.

A few key steps to always follow when building custom modules.

  1. Jump on the training section in Modano as I'm pretty sure a lot of this (and more) advice is in there!
  2. Run a module content report + search & repair when you think your module /model is ready. Great first step to ensure module / models are free from errors.
  3. Try to export the module and then import your module into a Dynamic Template to see how it drops in, this will give you a pretty good idea of how cleanly you've built the module
    1. Look for things like whether links come in properly
    2. How the content interacts with your time series
    3. A common issue with H+F content building is forgetting to start your block in column J. So often, the first period was the first forecast period you had set in your model, and the formula will go a bit funky.
    4. Ensuring default assumptions are in place that make sense
    5. Some error checks on totals / allocation totals
  4. Try and leverage existing links from the content library, this way you can still use existing dynamic templates / dashboards, etc. without having to create new links for everything
    1. The goal here is to maximise the modularity and reusability of what you're doing, otherwise you'll have to keep creating new content every time
    2. Something like using the "Revenue" links from the library rather than creating the new one you have T&B revenue
  5. I’ve done a quick re-jig (I was pretty curious) to see what I could get to
    1. Still improvements that can be made
    2. The ticketing may create issues around unearned income, which has subsequent WC and GST implications, another matter for another day.

Broader formula points

Modano's time series structure means you don't need to try and create complicated formulas to manage time referencing. Spending a bit of time playing around with the various counters will really benefit your modules down the track. I tried to make some examples of this in your conversion to time series.

With the two-dimensional lookup you’re doing, an index/match might be a good alternative to using offsets. What you’ve got makes sense, but (this is a personal preference) I try and keep offsets out of my models. There are certain techniques where you have no other option (reverse ticker), but for the most part you could use an index or a combo of indexing and matching to do 99% of things. This is my preference because Modano can scale so crazily, using offsets can sometimes really impact on calculation times, especially if you’re looking over a long period, or there are lots of categories, so I really try to avoid volatile formulas.

Anyways, that was a bit of fun to have a mess about in, great stuff!