So should I change all h2 to h1? Some contrasting opinions here
No. There's really no need as long as you aren't doing something like <h2> then <h1> then <h3> then <h4>, because the only real starting point for "deciphering the web" is with the HTML docs, then "expanding" from there to allow for differences in coding.
The reason the <h2> then <h1> then <h3> then <h4> isn't something I would encourage is best explained in the HTML docs here: http
://www.w3.org/html/wg/drafts/html/master/sections.html#headings-and-sections
[link de-linked purposely to include the fragment-indentifier, so copy and paste].
Using an <h2> rather than an <h1> shouldn't be a big deal to search engines since they've been dealing with things along those lines for years. If there is more than one main topic on a page and an <h2> is used for the main heading, then using an <h2> for the other topical headings is what I would do, because headings of the same numerical value indicate a new "section" or new "subsection" on the same level as the previous heading of the same number, while a higher number heading indicates a subsection of the previous heading.
So, for example a page about apples and oranges with an initial heading of <h2> for apples should be followed by an <h2> for oranges, rather than an <h2> for apples and an <h3> for oranges since the <h3> indicates semantically oranges are a subtopic or subsection of apples, but they're not.
The same would apply for the use of <h1> being followed by an <h1> rather than an <h2>, when an <h1> is initially used rather than an <h2>.
Basically, changing the numerical value of a heading will *not* in-and-of itself change the importance of the text it contains or cause "better rankings", but having a document coded in a way that is semantically-understandable by an algo may.
IOW: Changing the initial heading on a page from <h2> to <h1> when there is no other heading should have no effect, but changing the second heading on a page where an <h2> is used initially from an <h3> to an <h2> may make a difference due to the semantic implication the second heading represents a new section on the same level as the first section, rather than the second "section" being a subsection or subcategory of the initial heading. See the apples and oranges info above for a better idea of what I'm saying.
<h1> is for the Heading of a document or page, <h2> is for sub-heading or subtitle, <h3> is for heading of sections and so on through the page.
Sorry, but that's inaccurate -- An <h2> indicates a subsection of content to the <h1> and an <h3> will indicate a subsection of the <h2> it follows, but an <h2> is not a "subheading" to the <h1>. Please see the docs for more info.