To BI or not to BI? Here are some questions to ask
Should I use a BI/reporting tool or build data visualizations myself? is an evergreen question, and the answer is always “it depends.”
Some questions I ask to help navigate the tradeoffs between using a reporting tool and building visualizations directly in an app:
Do end users need to create their own reports? Reporting tools are good for when users need to create their own reports, or explore data independently, without defining all the navigation paths in advance at build time.
How big is the proportion of reporting vs. total features? If reporting is one small part of an app, and reports are all statically defined at build time, you may be better off visualizing the data directly in your app rather than adding more moving parts. On the other hand, if reporting is a significant enough feature, it could take on a life of its own, and perhaps be split out as a separate application. At that point, it may be an easier call to use a BI tool instead of building an app, as opposed to using a BI tool as part of an app. (Conway’s law strikes again.)
How do I balance development velocity vs. flexibility to customize UX? Reporting tools will let you build out many reporting and data visualization use cases quickly. On the other hand, while you can customize the look-and-feel of reporting tools to some degree, there will be a limit to how much you can customize the UX in a reporting tool.
While there is no single right answer, it is important to weigh tradeoffs carefully when deciding whether to adopt a BI tool or to build reporting features directly in the app.
It’s also important to avoid a worst-of-both-worlds scenario, where you adopt a reporting tool but it ends up being harder to cram your customizations in than it would have been to build the visualizations yourself.