Reporting is the fun part of each new month — the time-consuming, but very necessary, task that is part of any marketing company’s existence.
How these reports come to life and the processes used to produce them differ with every company. For most, this is a very manual process.
In the past, we extracted and aggregated data from many sources and then manually imported this data into spreadsheets. Once that was all complete, adding a summary-and-analysis piece was the final touch before the report went off to the client.
When you’ve got a small client base, this process works fine and isn’t too much of a hindrance to getting other work done. However, when you’ve got several hundred clients, this process quickly changes from taking only a few hours to taking days. Before you know it, your company shuts down for the first seven days of each month as everyone works on getting reports created, analyzed and out the door.
We found ourselves at a crossroads as we came to the realization that we needed to find a better way. We knew that many services existed to automate reporting, and we spent time looking into quite a few of these, but soon realized that the one-size-fits-all models were not going to work for us. We have a highly customized process here, and we also have a proprietary tracking code with data that needs to be integrated into each report. These, along with other factors, pushed us in the direction of building our own application to bring our reporting online.
We knew this would be a very large undertaking, but we are lucky enough to have the resources in-house to take on a project like this. We also are lucky enough to have a management team that sees the value in investing time and money into building software to improve business processes and automation.
We set off on the process of documenting the functionality that would be needed and the various APIs we would need to integrate with — and which APIs would need to be built to support this project.
Over the course of the next year, using an agile development process, we broke the project down into manageable chunks, built out the backlog, and then started working through the many necessary iterations; continually testing and improving things along the way.
We ended with a setup that includes the Laravel 5 framework, a highly scalable cloud-based Mongo database, and integrations with seven (and counting) web services.
There were many challenges along the way, and this project ended up becoming one of the most complicated tasks we’ve ever undertaken here. But the reward has been well worth all the effort. The result has been a game-changer for our company. Our clients now have access to real-time analytics involving their marketing campaigns. Clients no longer have to wait until the end of each month to see their results. They can log into their dashboard anytime, from any device, to see stats on their traffic for the month, view their form submissions, listen to phone calls, check out e-commerce revenue and transactions, and much more.
Also, our internal staff no longer has to log into five different dashboards to view data on how our clients are performing. This quick access to real-time analytics helps us more easily analyze data, spot trends, modify campaigns based on what is (and isn’t) working, and quickly adapt to changes in the marketing landscape.
In the end, it was incredibly rewarding to work on this project, and we learned a lot during the process. We already are seeing it pay huge dividends in terms of speeding up internal processes and the amount of time spent each month on reporting. The time saved by this application now can go back into campaign and client management, which is where it belongs, and this is really the biggest benefit for all parties involved. The feedback we’ve gotten from our clients so far has been outstanding. We hope that this application continues to provide them with easy access to all of the important data necessary to keep on top of their marketing campaigns for years to come as we continue to add new features and make additional data available.