WordPress is popular platform because of its plugin resources but in Blogger, plugins like Yoast, RankMath, SEOPress are not available.
But if you read this article and follow A to Z Guideline, your blog will get more organic traffic, trust me.
Why SEO is Important?
SEO is the method that connects your website to the internet through search engines like Google. And search engines retrieve data or contents from any blog or website if they configure required settings. And they make priority or ranking according the quality of content like Articles or Blog posts. So in this article I will show mainly two parts of SEO:
- Blogger SEO Settings
- Article SEO Guideline
Blogger SEO Settings
These settings will make sure, Google and other search engines can read your blog to enlist the content.
- Make Public & Visible to Search Engines: From Settings → Privacy, activate 'Visible to search engines'.
Also make sure 'Reader access' is set to 'Public'. - Title & Description: Give your blog a title and a short description from Settings → Basic.
- Meta Description: Activate meta tags and description from Settings → Meta Tags.
- Activate SSL: From Settings → HTTPS, activate both option to install SSL. It will take few time to update. Don't panic if your blog has stopped suddenly. Just wait an hour. It will be updated automatically.
- LazyLoad & WebP Images: To activate Lazy load images and WebP image serving, go to Blogger Dashboard → Settings → Posts and activate the Lazy load images and WebP image serving according to the below screenshot.
- Robot.txt file updating: From Blogger Dashboard → Settings → Crawlers and indexing, enable custom robots.txt option and paste the following code.
User-agent: Mediapartners-Google Disallow: User-agent: * Allow: / Disallow: /search Sitemap: https://www.compromath.com/sitemap.xml Sitemap: https://www.compromath.com/sitemap-pages.xml
Replace
compromath.com
with your domain name. - Google Search Console: Add your website to Google search console and submit your following sitemaps.
Article SEO Guideline
By following the above, you will connect your blog to search engines but when about the ranking of contents, then each article must be optimized according to the below.
- Post/Article Title: Keep article title within 50 to 60 characters. Use targeted keywords at the beginning of title. Try to make the title natural and potential to attract the visitors but not click-bait with wrong information.
- Images Optimization: Use a featured image at the beginning of article or after first paragraph. Add text with keywords to image title and alt text.
- Internal & External Link Building: Internal link building means connecting your existing relevant articles to the relevant keywords within article body. And you can use external links to give reference and authority to article.
- Sub heading: Using heading, subheading to important section is good practice. It will help your visitors to understand each section easily. This also helps to rank in Search engine results.
- Search Description: From your Blogger Post Editor, in the right side panel, you will see an option to insert text to 'Search Description' box. You can insert here your first paragraph or custom short description about your post article.
- Short Links: Keeping short url links for each article is recommended but in Blogger it is tricky. Use the text (what you want to choose for permalink text) to post title while publishing and after published, use the original Title and Update the post.
- Labels: Put up to 2/3 labels in each article. It will help your blog to filter base on Label name.
Add SEO friendly Meta Tags (Optional)
This is not mandatory for each Blogger blog. If you are using Premium Blogger Theme or Default Blogger Theme like Contempo, Soho, Emporio etc, then you don't need.
If your Blogger requires, you can add the following SEO friendly meta tags.
- Go to Blogger Dashboard → Theme → Edit HTML and copy all code to your code editor software search for
<b:include data='blog' name='all-head-content'/>
. If you find then replace it with<b:include data='blog' name='custom-head-content'/>
- Next, search for
<b:defaultmarkup type='Common'>
and put the below code.<b:includable id='custom-head-content'> <meta expr:content='"text/html; charset=" + data:blog.encoding' http-equiv='Content-Type'/> <meta content='blogger' name='generator'/> <link expr:href='data:blog.blogspotFaviconUrl' rel='icon' type='image/x-icon'/> <b:if cond='data:blog.adultContent'> <meta content='adult' name='rating'/> </b:if> <link expr:href='data:view.url.canonical' rel='canonical'/> <data:blog.feedLinks/><data:blog.meTag/> <meta expr:content='data:view.description.escaped' name='description'/> <b:tag cond='data:view.isMultipleItems and data:widgets.Blog.first.posts[0].featuredImage' expr:href='data:widgets.Blog.first.posts[0].featuredImage' name='link' rel='image_src'/> <b:tag cond='data:view.isSingleItem and data:view.featuredImage' expr:href='data:view.featuredImage' name='link' rel='image_src'/> <b:include name='graphData'/> </b:includable> <b:includable id='graphData'> <b:if cond='data:view.isHomepage'> <meta content='website' property='og:type'/> </b:if> <b:if cond='data:view.isSingleItem'> <meta content='article' property='og:type'/> </b:if> <b:if cond='data:view.isMultipleItems and not data:view.isHomepage'> <meta content='object' property='og:type'/> </b:if> <meta expr:content='data:view.title.escaped' property='og:title'/> <meta expr:content='data:blog.url.canonical' property='og:url'/> <meta expr:content='data:view.description.escaped' property='og:description'/> <meta expr:content='data:blog.title.escaped' property='og:site_name'/> <b:tag cond='data:view.isMultipleItems and data:widgets.Blog.first.posts[0].featuredImage' expr:content='data:widgets.Blog.first.posts[0].featuredImage' name='meta' property='og:image'/> <b:if cond='data:view.featuredImage'> <meta expr:content='data:view.featuredImage' property='og:image'/> <meta expr:content='data:view.featuredImage' name='twitter:image'/> </b:if> <meta content='summary_large_image' name='twitter:card'/> <meta expr:content='data:view.title.escaped' name='twitter:title'/> <meta expr:content='data:blog.url.canonical' name='twitter:domain'/> <meta expr:content='data:view.description.escaped' name='twitter:description'/> <b:if cond='data:view.isHomepage'> <script type='application/ld+json'>{"@context":"http://schema.org","@type":"WebSite","name":"<data:view.title.escaped/>","url":"<data:view.url.canonical/>","potentialAction":{"@type":"SearchAction","target":"<data:view.url.canonical/>search?q={search_term_string}","query-input":"required name=search_term_string"}}</script> </b:if> </b:includable>
- Upload your updated theme code and save.