Components are typically a self-contained representation of some content. Depending on the design of your website, content pages can be made up of multiple components to bring the whole page together.
One of the major benefits of using a component in Sitecore is the ability to use personalisation and testing features on each one. This allows you to evolve the site and get the best combination of elements to achieve your digital goals. However, it’s very unlikely that you will use those features across every component in a page.
Another benefit is the ability to have rendering options. For example, determining the colour scheme of the component or layout of the content. You can use the same component on a different page but displayed completely differently.
Flexible but lengthy
Pages made up entirely of components can offer unlimited flexibility. Authors can decide exactly what components best represent their message and put them in any combination. The drawback is that they take time to build. If you have a page made up of 10 components, you need to create them all first before bringing your page together. This can be a big overhead and do you really have the time at the moment?