The answer isn't a modern design or good content or even lots of pageviews in your analytics. No, a good website is one that accomplishes your goal.
That might seem obvious, but people often forget that a website is just a tool. Just like an email list, or even something more old-fashioned - an entry in the phonebook, it's a tool that should be used with the purpose to accomplish something.
“In all things that you do, consider the end.” - Solon
For an e-commerce store that might mean making sales, for a portfolio site it might mean getting leads, the important thing is to have a defined goal or set of goals. If a business has a website for example then it should be a tool used to accomplish something, not just a digital placeholder of a presence because "all businesses need a website".
If you're the one who needs a website, think about why you need it. How will it help you? And then make sure to have a good designer(s)/developer(s) who cares.
And if you're building a website for someone, you should know what they want to achieve so that you can work to help your client/company/etc. Everything from the user-flow to the content should be done with their end goal in mind, and that's especially applicable if you're a freelancer where what you sell isn't yourself or your skills but the value you add to your client.
Now the way to go about accomplishing your goal depends entirely on what that goal is. For example with my portfolio site, it is important that I create a good modern design that feels nice so that people want to work with me. People who don't know me won't want to work with me if they don't like my website. But the coolest design isn't always the most effective when it comes to increasing conversions.
Some practical tips:
Make it abundantly clear to the user what they're supposed to do on the website.
Reduce friction in the user-flow, what that means is to make it as easy and effortless as possible for people to do whatever it is you want them to do.
Be careful not to overwhelm users with choices, whenever possible give one or two available choices/actions. This has the benefit of reducing friction, and people will be less likely to abandon their action partway through.
Be consistent. With the design, with the content, with everything. You want to reduce your chances of confusing people while you're trying to guide them to sign up/make a purchase/contact you/etc.
Lastly, make your website accessible! It's often overlooked but it's an important aspect of websites. If you want more sign-ups for example make it possible for anyone who wants to, to be able to navigate your website and fill out your sign up form
If you enjoyed this article feel free to subscribe to my bog's newsletter. You can also learn more about me or get in touch here.