How to build SaaS software: Gavin Lira and Dennis Yu discuss

Gavin and Dennis discuss how to build SaaS software for a reporting dashboard

Gavin and Dennis here!

And today, we’re gonna cover building dashboards and building software in general. And if you’ve never built software before, this is a great opportunity to learn a lot of people. Waste a lot of money trying to build software as entrepreneurs, but they don’t understand things like this three tier architecture I’m gonna show you.

And I’m gonna show through examples of stuff that we have built for huge companies like Nike and Billy Jean. And Gavin will ask questions along the way. Yeah, Dennis is the expert here. I’m the student. So I’m excited to, learn and. So I’ve built some software for these huge companies and starting from Yahoo 20 some years ago.

And you’re gonna see there’s the same framework. Now, this is independent of whether you’re using Pearl or PHP, Python, angular, JS, go, whatever your favorite flavor is. This is about building things that actually collect data and actually do things. So Billy Jean came to. A few years ago. And he said, Billy chain, he’s huge on video.

He’s got billions of views. And he said, I’m making all these fun videos and all this. And I’m spending a few hundred thousand dollars a month on ads, but I don’t really know what’s profitable. I know in like general I’m profitable, but one day I could be down a couple hundred thousand dollars or maybe my turn rates higher, or this new campaign I launch is working or not working.

I need a dashboard that can look at everything. So in the morning, I get a text message and it’s okay, this is how much revenue you have. This is what the lifetime value is. This is what your profitability is. This is how many refunds you have. This is your top campaign, just a few simple things. And he thought that this was a matter of just what most people think. Let’s just pull all this data from Stripe and Kajabi and click funnels and Google ads and Facebook ads. And just put it into a dashboard, should be easy. Something might just take a day or two. Actually that’s not the case because.

For some reason, I think if I open this up, it, you actually see that these are all animated. I wonder how do I do that? Go to slideshow mode, maybe that’ll work. They’re all like gifts. Yeah. These are all animated. If I can get ’em to work. Whatever. So like anyone else that’s an info product seller or an agency or yeah, selling stuff.

You’ve got lots of systems. So it’s systems for communicating, for buying ads, for CRM stuff, for processing payments. There’s also organic and paid social. So he’s across all these channels. And you guys remember he did a Facebook ads course, a YouTube program start your agency program. But regardless we wanna put into three layers and this kind of wedding cake 3 0 2 architecture is something that you’re gonna see often.

So this first layer is this data. So let’s get all the data he has in the one place. All these different systems, a lot of ’em have APIs. Some of them, you can use API. Some of ’em, you can scrape some of them. You have to build your own integrations to get that data all in one place. And then that middle logic layer is where you’re doing calculations.

So this is metadata formulas, calculating profit calculate, just business, logic and rules. That are from the raw data all the way up. And then the UI layer is where you’re displaying it. That’s the application where people are clicking on things. Maybe they’re buying things. We have internal people, they’re doing reporting.

We’re refunding people, customer service. People are using the application to integrate with the logic layer, which actually does stuff. The application layer all the way down to the data layer. So anything that goes in and out where a human. talk to the underlying database, goes through the UI cuz people don’t want to program.

They want to click on a button inside an app on a webpage, that kind of thing. So you have these three different layers and they’re separated. So let’s say we wanted to build a new UI, but we don’t have to rebuild the actual application itself. Which is where all the processing occurs and we don’t have to rebuild the underlying databases and all the sources.

Likewise, if we have this three tier architecture, if we wanted to integrate TikTok ads, we could, that would just be another data source that plugs in and it fits in the overall model. We’d have to adjust our formulas, let’s say, calculating total spend it’d be Facebook plus Google plus email plus whatever, plus TikTok.

So we’d have to have that other source. So other formulas and whatnot can adjust in this logic. independent of how it looks in the UI, like where all the buttons are and landing page is independent of what happens on the bottom so this is an extensible three tier architecture, pretty standard, right?

Yeah. Okay. So we put all this data in here that Billy Jean had, and whenever you start building things if you ever built something like this, you’re going to always come into a situation where they say, oh yeah, it’s really easy. I have all the access everything’s already working. It never. It’s always a disaster.

There’s always stuff that’s wrong. The logins are wrong. They keep changing, which breaks our systems. Cause then we’re using a certain login and then the password isn’t working. So it doesn’t bring in the data. So then we’re miscounting because the data’s not coming through or there’s other systems they didn’t realize they needed to use.

So this whole thing about getting the data in, into one place and the data layer is actually more work than you’d imagine it’s actually the most amount of work, surprisingly least amount of value. Most amount of work is just ugly. Getting all the data in the place. Middle layer that application logic layer.

That’s when we’re calculating profit, that’s when we’re associating money, that’s being spent on a new campaign Hey, start your agency, whatever it is, whatever the name of the new campaign is, right? Oh, we’ll submit, press releases for you, whatever it is, associating the profit with the cost and then the customers that are associated with that.

And then rolling it up, which means aggregating it to the total. So in the UI, you can display how you wanna look at your business. Yeah. By geography, by who’s the most. Profitable sales agent by how many leads are coming in by where the phone calls are. You can put onto a map, you can do pie charts, whatever kinds of ways of looking at the data.

Yeah. Also oh, our thing died. that’s okay. Hang on. No worries. I can pause it quick, too bun. Okay. Yeah. But here doesn’t even exist. All right. So this architecture. you can see it works for any kind of software you wanna build. Yeah. And a lot of people think you need a high level or click funnels or any software you look at is going to be using this same kind of architecture in some way, no matter what kind of code they have, they just have different data that’s coming in the data layer, different things that’s going on, which is the application layer.

And then different ways of looking at it. And white label software is really. Data layer, application layer, and then a slightly different UI with just a different logo on a different website’s all the same. That’s like how you resell the same software, make lots and lots of money. Yeah. So the software that we build, for example, let’s say we rebuild it for Tony of long line marketing.

For his agency. He can sell it to all the other agencies. Yep. The stuff we built for liquid Vita working for all the 30 locations and 60 and 90 locations. Anyone else who has a health clinic? Med spa would, could use the same. Yeah. It uses blood work, essentially. Those blood work reports. And correct me if I’m wrong, all softwares is just code, right?

Like at its base all software. Yeah. That’s a really smart observation. It’s rules for computers. Yeah. It’s telling a computer when this one thing comes in, process it a certain way. Yeah. Charge somebody for it. Yeah. Or credit their account five more whoopies inside the game or whatever it is. Yeah.

And so it’s just an instruction set. Rules, code logic is software. Yeah. But the same is true for humans. If you have humans that are in a call center and they’re answering phones. Yeah. You’re giving them rules, SOPs procedures on how they need to. Exactly. If you’re Uber and you’ve got all these people that are driving their cars all around , you’re telling them what to do.

That’s process. So process or SOPs. For humans. Yeah. It’s the same thing as code for computers. Exactly. Because they rules. Yeah. It’s the same thing. So if you can develop rules on exactly what has to happen, , you’re a programmer. Yeah. That’s always why you don’t have the so you would technically be a programmer that, yeah.

Oh, interesting. I call that being an architect. Yeah. I always figured you’d have to have some official, background on it. Cause, cause that’s the interesting thing about, being in the agency space, as the hardest part of it, isn’t actual. it’s service delivery, but the delivery in it is scaling humans.

That’s what makes it hard. , cause if you know what works, it’s okay, if we can just do this, but that’s the cool part about software is it’s you’re essentially just scaling the SOPs almost flawlessly. Of course nothing’s a hundred percent efficient. Mm-hmm But. , way more than, Hey, if all the SOP and then no one follows it, or you have to force them, then you have to enforce positive action and, make, things happen for negative actions.

And it’s yeah. Okay. That’s cool. So it’s just software that, code that will tell somebody it’s rules for what happens when data comes in. Yeah. Add it up in this way. Put it over here. Send an email to Billy. Or send an alert, like we’re losing money, turn this campaign off. Yeah. It’s just rules.

It’s logic. Yeah. And when we think about SOPs for humans, what makes a great SOP? One that’s specific enough that they can follow directions. So they’re not confused. And it accounts for the ways they may try to mess things up. Yeah, what happens if people don’t show up? What happens if they, overcharge somebody?

What happens if they run off with money? What, all the things that could go wrong. So a really good program. Who’s writing code using whatever their favorite application, whatever Pearl PHP. Yeah. Whatever language is exactly the same as a good business logic business strategy person. Because in both cases we’re thinking about what are all the things that could go wrong and let’s design rules.

It’s like designing a video game so that people can’t cheat you. Yeah. So question on that too. And we don’t have to spend a lot of time on this. Cause I know it’s not super important for the overall strategy, but just on the technical aspect, you have different stuff, you hear Python, CS, HTML, you talked about a few others.

Yeah. Lots of languages. Yeah. So when you’re looking to accomplish something, how do you choose? Is it almost like what’s my favorite language and let me work, let me make it work for this or is it, Hey, here’s the problem? Which language should we choose from to solve this problem? If that makes sense. It works either.

So you want to dig up your garden, you can use a shovel, you can use a backhoe, you can use a fork and you could use all. So there’s no one tool that’s necessarily better because let’s say we were playing golf tiger woods with a rusty used $5 club from the salvation army could beat you with a brand new set of ping title, this whatever club.

Yeah. Or, DaVinci with Crayola crayons could beat me. Yeah. With the fanciest set of paint, brushes and whatnot. Yeah. So it’s not the tool. It’s the user that being said, whoever is the business owner, the one who’s paying for it, they may have a preference. If they really want to be built in PHP, then we’ll build it in PHP.

Yeah. And there’s people that are good at PHP. Yeah. But some people they really want to use, go and go Lang is their favorite thing to do because that’s how they’ve been doing it. And if they’re your engineer and you’re really loyal to them and they’re your employee, then they can build it in go Lang.

Yeah. If they want and someone like me, I’m a little older. I might prefer. Doing it in Pearl, cuz I’ve done Pearl for a long time. Yeah. And with Pearl, the joke is you can do everything, yeah. Which is true. You can build anything. So it’s not the tool it’s whoever the user is. And do they understand the logic?

Understanding business logic is the most important thing. And as you’ll see here, as we go through this. Understanding exactly what has to happen from the user standpoint. Yeah. And why the user needs to click on this or do that understanding, like if we’re doing something for a digital marketing agency and how they’re onboarding clients and the work then goes to the VAs or designers or WordPress people, or article writers, understanding it from a business standpoint.

it creates the business logic, which then drives the rules for the computers and drives the rules for the users. Yeah. So SAP makes sense. So PS and code, same thing. Yeah. You have to have the vision of how things actually work and then this is all just the form of delivering on. Yeah. Yeah. So great programmers understand that.

Okay. So there’s a login and we won’t reinvent the wheel on what happens in a login and reset your password. Now we’ve reskin this in many different. So this is similar to Nike dot blitz metrics.com, Billy Jean Ashley furniture. Yeah. And then we’ll put their face, as you can see on here. Yeah.

Make it look nice, their logos. And it’s ridiculous. How op how clients care about those kinds of things. But you just do it anyway, even though it’s not even 1% of what yeah. It doesn’t actually matter when you get to the dashboard. In this case, our home screen, we’re showing total revenue. And how many members we have and of course, those go together, net of cancellations, net of refunds that, oh, whatever’s the most important metric.

that people want to be able to see. And in the UI we can choose whatever we want. They can say, instead of making it blue, let’s make it green. Yeah. Let’s make it bar charts. Let’s add this third thing here saying, how many agents we have. Let’s what the most popular courses are. Like.

There’s so many different ways that you can recombine the data that you have to be able to display it in a certain way. Yeah. Like the golden state warriors, they wanted to see how many tickets they’re selling for their top games. How many season ticket holders they have, how many corporate members they have, how much merch they have, what’s the parking revenue.

So you guys built software for them, like to show that , that’s really cool. Yeah. We built dashboards for Nike and red bull and the warriors and Ashley and Quiznos. And so Lego all these guys. Why is software usually so expensive? Cause we were talking earlier and talking about, you can build some, like really.

Good software for not a whole lot of money, if you’re going to pay somebody or going you always hear, like you have to give the developer equity or it costs like, like $150,000 at least to build something decent and yeah, why is that? Let’s apply. ACAMS razor. Why do you think that is?

I’m thinking it’s because there’s people who know something at That the person who’s wanting to pay them ha knows they know what they want, but they know nothing about how to get there, essentially. So there’s a big knowledge deficit and there’s also a skill deficit. Clearly. There’s not a lot of people who know that so they can a charge a lot of money, but B also a lot of times unethically even say, oh, this is gonna be all so complicated, whatever.

And the okay, I guess that’s right. I think it’s a mix of both, but. That’s just a pure guess. Yeah, that’s right. One is because the underlying customer doesn’t understand what they’re. So you can overcharge ’em yeah. Just like a mechanic. Oh yeah. Let’s say oh, you’re gonna have to replace a transmission and you’re low on blinker fluid.

Yeah. Yeah. So I’m not saying all engineers are all technical people of course are scammers. Like I like to think all SEO people are like scammers. Yeah. Cuz they’re overcharging relative to what? To the delivery and the results of that. Yeah. So second thing, the biggest thing is that there’s such a gap between the people of the technical skills to do the building.

And then whoever has an idea of what they want. So when we are meeting with Sam, He thought I wanted to build this whole AI driven. Like people love to use these buzzwords, like AI machine learning. Yeah. So it was the one. Yeah. And I looked at his stuff and I said based on what you’re trying to build, you need just simple bullying, regular expressions, right?

Yeah. Simple logic of this, then that based on this formula, you don’t need AI. You don’t need giant databases. This is not Cambridge analytic. This is not talks, newsfeed or algorithm, trying to figure out what to show like facial recognition. Like none of that kind of stuff. Very simple. Here’s the blood work.

If your cholesterol’s over one 30, then here’s something you need to do. Yeah, that’s simple. Yeah. If this formula is true, then this is the recommendation. Yeah. If this more complex formula that’s based on combining your cholesterol and your age and your testosterone and your blood sugar, if this and this and this minus, that is greater than 25 than recommend.

Yeah. So the formulas can get more complicated, but the actual logic that’s being implemented and the majority of software going forward, which is a whole nother discussion, but yeah, the software that’s being built today, there’s actually less on infrastructure, on databases, on computation, on all the technical kinds of things that you don’t really need that.

And it’s all increasingly in your head and what the rules are and understanding that at the architect level, that’s why we can build a software. Reasonably quickly. It makes sense. It reminds me of for something like that, it reminds me of a bit of Google sheets and it is, yeah.

Like almost if you get, get the data in, clearly Google sheets doesn’t automatically grab it, which is something that’s unique of it. But yeah. Then you could have, add the formulas if this is great and that say this word here, or, you recommend this phrase, which the phrase would be needs more vitamin C right.

And recommended sections. Yeah. You could do macros in Excel. There’s all kinds of different ways to make a sheet. interactive. And to automatically let’s say every day, go pull all this data and Google. Yeah. So that’s where you have Zers. And these other tools like data studio does allow you to do that. So you can almost make Google sheets or Microsoft access an application.

Yeah. I would say the one thing that people miss on this is.

The mindset of an employee versus a profit maximizer

One of our team members asked if they should increase the budget on a campaign from $80/day to $140 a day.
Here’s what I said.

Please choose whatever budget you see fit in your expert opinion.
You’re the pro!

You know our business goals and are best positioned to determine what tweaks to make to maximize revenue at the target ROAS.

Since we know in eCommerce, unlike most agency work, it’s not about a daily budget (which is about managing expenses), but about maximizing profit (at whatever spend maximizes this).

A typical agency employee has the goal to spend exactly $X as the budget– which can be too low if the campaigns are profitable, but too high if we’re wasting money.

So use your pro skills to test and optimize, while we’re here to advise in our areas (me on strategy/optimization), the client on content/financials, Daniel on analytics, etc…

Want to know how to spot in 15 seconds whether an analysis is worth reading?

Want to know how to spot in 15 seconds whether an analysis is worth reading?

Here’s an actual attempt at analysis that an internal team member submitted on the performance of a client. Look it over for second and see if you can tell what company it’s for.

If you can’t, then it means they’re robotically going through the numbers– reading numbers off a chart, instead of understanding WHY a key business metric went up or down and WHAT we need to do about it.

So here’s the tip– look for rich GCT (goals, content, targeting) in what you or a team member submits. If they don’t intimately understand the heart of your company, then they’re just mindlessly cranking out charts– something a simple computer program could do in converting stats to sentences.

Are you or your team members guilty of this– to pretend to be doing analysis, when you’re just regurgitating numbers from a report? Look for GCT as the telltale sign.

>>>>SAVE THIS<<<<<

Most of you don’t have Search Console activated in your Google Analytics.

As a result, you can’t see what people are searching for even if they don’t come to your website.

For example, look at Search Console query data, where we see that way more people are searching for “3×3 video grid” than anything else where we show up in search.

But if we sort by clicks, “blitzmetrics” and “dennis yu” drive the most traffic, since it’s a higher intent search (brand terms) and higher average position.

We can also look at the top content for our site (under “landing pages”, letting us know what we should write more about, what content to tweak (for higher position), and what isn’t working.

Let me know if you want our training on how to set up Search Console or have us do it for you.

I am NOT a Facebook marketer

I am an expert at driving sales and I happen to use Facebook.

I am NOT an analytics geek– I am relentless in creating the systems that generate jobs for young adults.

I am NOT a book lover– though I’ve read over 4,500 books, I’m hungry for the knowledge I need to achieve my goals, which compels me to read.

Nike is not a shoe manufacturer– but about “authentic athletic performance” and teaching “everyone is an athlete”. And they happen to make shoes.

FedEx is not a package delivery company– they are about “peace of mind” and “the world on time”, though they have the largest fleet of cargo aircraft on the planet.

WHO you are is not your activity– it’s your MISSION, not the TOOLS you use to accomplish it.

I want to know WHO you are and how I can help you achieve your vision.

Always Be Testing!

I thought this post was going to do well, since it had a couple photogenic people in an interview at a conference.

Even though the engagement rate was close to 10% (17 out of 219), I got hammered by the Facebook algo, charging me $6 to reach 200 people.

That a $30 CPM (cost per 1,000 impressions), which leads to 40 cents per like.

If we were trying to drive sales here, then this wouldn’t necessarily be bad.

But for top of funnel awareness/engagement
on this public figure page, I had to kill this boosted post.

90% of my boosted posts fail. And the 10% that win are not the ones I would have predicted.

Trust the data— always be testing!