When I type my website name in Google, a couple of the website pages show up in the search but not the homepage. The domain is over a year old. What could be the cause of this?
The product pages show up in the search, but the mainpage is still not showing up at all in the search. I can't figure out why.
I have seen this happen before. The best thing you can do to resolve this quickly is to build some high quality links to the main page. Even when this happened to me a sitemap submission did not resolve it in a timely manner. I believe a PR 4 link from a relevant Wikipedia page did resolve it though.
Work with a good linking structure and as already stated above build some quality backlinks. And check the backlinks from the pages that are indexed and those who arent.
Everyone here is simply throwing out wild guesses. If you REALLY want to know why, tell us your domain name so that we can take a look and help you. It could be 1000 different things including but not limited to your inner pages having more inbound links with your domain name as the link text OR your home page having a <meta name="robots" content="noindex"> element in the <head>. But we can't say for sure without being able to look at your site.
As mentioned above, it would not be possible for anyone to give you suggestions without scrutinizing your website. There might be several reasons of now showing your home page for your website name. Google generally ranks a page on top that is more popular in your website. There might be more popular internal pages in your website then your home page. Did you search with site: operator, is your home page indexed?
Canonical, I think you found the problem. <meta name="robots" content="noindex, nofollow" /> appeared in the head when I clicked on "view source". I have no idea how this would have got there. I have another website that is almost the exact same and this did not appear in the source. Any idea on how that would have got there? How would I find out if there are anymore of these in the code because I would not want any of the other pages to have this code as well.
Build some quality link for your home page, another Good way is Social bookmarkin to get quick index by search enging and it will also give you back link