diff --git a/app/code/Magento/Review/view/frontend/templates/review.phtml b/app/code/Magento/Review/view/frontend/templates/review.phtml
index c3f64511b151226854c3a569740e939e58d87d44..c332a1b4c874cae00c9e93103073e6a3a2910a2b 100644
--- a/app/code/Magento/Review/view/frontend/templates/review.phtml
+++ b/app/code/Magento/Review/view/frontend/templates/review.phtml
@@ -13,7 +13,8 @@
     {
         "*": {
             "Magento_Review/js/process-reviews": {
-                "productReviewUrl": "<?php echo $block->escapeJs($block->escapeUrl($block->getProductReviewUrl())); ?>"
+                "productReviewUrl": "<?php echo $block->escapeJs($block->escapeUrl($block->getProductReviewUrl())); ?>",
+                "reviewsTabSelector": "#tab-label-reviews"
             }
         }
     }
diff --git a/app/code/Magento/Review/view/frontend/web/js/process-reviews.js b/app/code/Magento/Review/view/frontend/web/js/process-reviews.js
index 124b59becf1cbc569b191f5e61b274fba0e7494f..8ba22caf292319e1c259d198cbea92b989084f3d 100644
--- a/app/code/Magento/Review/view/frontend/web/js/process-reviews.js
+++ b/app/code/Magento/Review/view/frontend/web/js/process-reviews.js
@@ -11,7 +11,9 @@ define([
         $.ajax({
             url: url,
             cache: true,
-            dataType: 'html'
+            dataType: 'html',
+            showLoader: true,
+            loaderContext: $('.product.data.items')
         }).done(function (data) {
             $('#product-review-container').html(data);
             $('[data-role="product-review"] .pages a').each(function (index, element) {
@@ -30,7 +32,17 @@ define([
     }
 
     return function (config, element) {
-        processReviews(config.productReviewUrl);
+        var reviewTab = $(config.reviewsTabSelector);
+        var requiredReviewTabRole = 'tab';
+
+        if (reviewTab.attr('role') === requiredReviewTabRole && reviewTab.hasClass('active')) {
+            processReviews(config.productReviewUrl);
+        } else {
+            reviewTab.one('beforeOpen', function () {
+                processReviews(config.productReviewUrl);
+            });
+        }
+
         $(function () {
             $('.product-info-main .reviews-actions a').click(function (event) {
                 event.preventDefault();
diff --git a/dev/tests/js/jasmine/tests/app/code/Magento/Review/view/frontend/web/js/process-review.test.js b/dev/tests/js/jasmine/tests/app/code/Magento/Review/view/frontend/web/js/process-review.test.js
new file mode 100644
index 0000000000000000000000000000000000000000..66c9ccccb23bea8565ec37477056b69b320d092b
--- /dev/null
+++ b/dev/tests/js/jasmine/tests/app/code/Magento/Review/view/frontend/web/js/process-review.test.js
@@ -0,0 +1,76 @@
+/**
+ * Copyright © 2016 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+/*eslint max-nested-callbacks: 0*/
+/*jscs:disable jsDoc*/
+
+define([
+    'jquery',
+    'Magento_Review/js/process-reviews'
+], function ($, reviewProcessor) {
+    'use strict';
+
+    describe('Test product page reviews processor', function () {
+        var element,
+        config = {
+            reviewsTabSelector: '#review-tab'
+        };
+
+        beforeEach(function () {
+            element = $('<div id="review-tab" role="tab"></div>');
+
+            $('body').append(element);
+        });
+
+        afterEach(function () {
+            element.remove();
+        });
+
+        it('Should automatically load reviews after page load if review tab is active', function () {
+            element.addClass('active');
+
+            spyOn($, 'ajax').and.callFake(function () {
+                var d = $.Deferred();
+
+                d.promise().complete = function () {};
+
+                return d.promise();
+            });
+
+            reviewProcessor(config, null);
+
+            expect($.ajax).toHaveBeenCalled();
+        });
+
+        it('Should not automatically load reviews after page load if review tab is not active', function () {
+            spyOn($, 'ajax').and.callFake(function () {
+                var d = $.Deferred();
+
+                d.promise().complete = function () {};
+
+                return d.promise();
+            });
+
+            reviewProcessor(config, null);
+
+            expect($.ajax).not.toHaveBeenCalled();
+        });
+
+        it('Should load reviews if non active review tab was opened', function () {
+            spyOn($, 'ajax').and.callFake(function () {
+                var d = $.Deferred();
+
+                d.promise().complete = function () {};
+
+                return d.promise();
+            });
+
+            reviewProcessor(config, null);
+            element.trigger('beforeOpen');
+
+            expect($.ajax).toHaveBeenCalled();
+        });
+    });
+});