Everyone has those aha moments when they feel they have a great idea. But what separates entrepreneurs, of course, is that they act on some of those moments to cash in on their brilliance.

But having an idea is a lot different from pursuing that idea. How do you know if your idea is viable? How do you know if your idea is one that other people can rally behind? What criteria should you use to determine whether your idea will create the basis for a successful startup?

All good questions. Let's explore them.

Where good ideas come from.

For me, my ideas-- and I'm betting yours too-- usually come from a combination of two things: First, my understanding of technology and the solutions it can bring to the table; and second, my empathy for consumer pain and frustrations. After all, the best businesses solve real problems.

Your ideas are probably based on the same combination. Maybe you're an expert on a particular subject. Or a serious hobbyist. Or you have an abiding passion for a certain industry, service, or avocation. You know your stuff, and you know what other people tend to struggle with or need.

For example, my idea for LogoMix came from realizing how many entrepreneurs and small businesspeople struggle to create brand identities for their companies. They know they need one, but they have no idea how to actually build one, both in creative and practical terms.

I knew the right technology could help solve that problem and dramatically undercut costs. But "knowing" I had a great idea was different from truly knowing. So I worked to validate my idea through a series of tests. And so should you.

Testing your idea.

Turning my idea into something real took work. First, we built an MVP (minimum viable product). Just a basic proof of concept. That way we could get early and immediate feedback from family, friends, and colleagues. We asked for input, advice, and  suggestions for making the product and experience better.

Then we tested marketing strategies. Building a great product is important, but effectively marketing that product is just as important. We tested different messages, different landing pages, different calls to action, etc. It's a mantra every entrepreneur should embrace: "Test, test, test."

Then we developed a genuine competitive advantage. We looked at things like speed, ease of use, quality, and cost. Then, and only then, did we fully launch.

Even after all that effort, was I positive my idea was great? Of course not. You won't be either. Still, you'll have data to support your initial premise.

When we received lots of positive customer feedback, we knew we had hit on a solution that not only solved a problem but also significantly undercut the market.

All of which leads me to the most important criteria for determining whether your aha moment can become a viable business.

Separating just an idea from a great idea.

When is an idea a great idea? Well, when it significantly improves a currently available solution.

Speed. Quality. Service. Reliability. Cost. You're looking for massive improvements in one area -- or a combination of smaller improvements that adds up to a massive improvement -- in how a problem is currently solved.

Why "massive" improvements?

Incremental enhancements rarely offset the time and effort (and cost) involved in starting a business. You won't be able to generate the revenue you need to keep your business going as you improve processes, build infrastructure, develop a team, etc., if there isn't a massive improvement -- especially if you're bootstrapping and financing your startup largely on the revenue you bring in.

Entrepreneurs trust their instincts. Successful entrepreneurs trust their instincts, but they also trust data. They trust testing. They trust the process of validating an idea.

And then they trust that while you can never truly know if your idea is great, you can know that you will work as hard as possible to refine and adapt and improve your initial idea so that it becomes great.

And in time, that great idea can become a successful startup.