diff --git a/app/code/Magento/Backend/etc/adminhtml/system.xml b/app/code/Magento/Backend/etc/adminhtml/system.xml
index 162aba1cfa3ef6fd6d86ada42171e834be6bcb80..e755e364cde87cdb9b7b04ad6b5d7e86ee8eb35b 100644
--- a/app/code/Magento/Backend/etc/adminhtml/system.xml
+++ b/app/code/Magento/Backend/etc/adminhtml/system.xml
@@ -142,13 +142,17 @@
             <label>Developer</label>
             <tab>advanced</tab>
             <resource>Magento_Backend::dev</resource>
-            <group id="debug" translate="label" type="text" sortOrder="20" showInDefault="0" showInWebsite="1" showInStore="1">
+            <group id="debug" translate="label" type="text" sortOrder="20" showInDefault="1" showInWebsite="1" showInStore="1">
                 <label>Debug</label>
-                <field id="template_hints" translate="label" type="select" sortOrder="20" showInDefault="0" showInWebsite="1" showInStore="1">
-                    <label>Template Path Hints</label>
+                <field id="template_hints_storefront" translate="label" type="select" sortOrder="20" showInDefault="1" showInWebsite="1" showInStore="1">
+                    <label>Enabled Template Path Hints for Storefront</label>
                     <source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
                 </field>
-                <field id="template_hints_blocks" translate="label" type="select" sortOrder="21" showInDefault="0" showInWebsite="1" showInStore="1">
+                <field id="template_hints_admin" translate="label" type="select" sortOrder="20" showInDefault="1" showInWebsite="0" showInStore="0">
+                    <label>Enabled Template Path Hints for Admin</label>
+                    <source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
+                </field>
+                <field id="template_hints_blocks" translate="label" type="select" sortOrder="21" showInDefault="1" showInWebsite="1" showInStore="1">
                     <label>Add Block Names to Hints</label>
                     <source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
                 </field>
diff --git a/app/code/Magento/Developer/Model/TemplateEngine/Plugin/DebugHints.php b/app/code/Magento/Developer/Model/TemplateEngine/Plugin/DebugHints.php
index 9d816ef52028891ba125124379e6be7cdb6ebf96..e0cb96a0f220fb5a505caf8c3aa6b7acfe0731fc 100644
--- a/app/code/Magento/Developer/Model/TemplateEngine/Plugin/DebugHints.php
+++ b/app/code/Magento/Developer/Model/TemplateEngine/Plugin/DebugHints.php
@@ -5,87 +5,100 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-
-// @codingStandardsIgnoreFile
-
 namespace Magento\Developer\Model\TemplateEngine\Plugin;
 
+use Magento\Developer\Helper\Data as DevHelper;
+use Magento\Developer\Model\TemplateEngine\Decorator\DebugHintsFactory;
+use Magento\Framework\App\Config\ScopeConfigInterface;
+use Magento\Framework\View\TemplateEngineFactory;
+use Magento\Framework\View\TemplateEngineInterface;
 use Magento\Store\Model\ScopeInterface;
+use Magento\Store\Model\StoreManagerInterface;
 
 class DebugHints
 {
-    /**#@+
-     * XPath of configuration of the debugging hints
+    /**
+     * XPath of configuration of the debug block names
      */
-    const XML_PATH_DEBUG_TEMPLATE_HINTS = 'dev/debug/template_hints';
-
     const XML_PATH_DEBUG_TEMPLATE_HINTS_BLOCKS = 'dev/debug/template_hints_blocks';
 
-    /**#@-*/
+    /**
+     * @var ScopeConfigInterface
+     */
+    protected $scopeConfig;
 
     /**
-     * @var \Magento\Framework\ObjectManagerInterface
+     * @var StoreManagerInterface
      */
-    private $objectManager;
+    protected $storeManager;
 
     /**
-     * @var \Magento\Framework\App\Config\ScopeConfigInterface
+     * @var DevHelper
      */
-    private $scopeConfig;
+    protected $devHelper;
 
     /**
-     * @var \Magento\Store\Model\StoreManagerInterface
+     * @var DebugHintsFactory
      */
-    private $storeManager;
+    protected $debugHintsFactory;
 
     /**
-     * @var \Magento\Developer\Helper\Data
+     * XPath of configuration of the debug hints
+
+     * Allowed values:
+     *     dev/debug/template_hints_storefront
+     *     dev/debug/template_hints_admin
+     *
+     * @var string
      */
-    private $devHelper;
+    protected $debugHintsPath;
 
     /**
-     * @param \Magento\Framework\ObjectManagerInterface $objectManager
-     * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
-     * @param \Magento\Store\Model\StoreManagerInterface $storeManager
-     * @param \Magento\Developer\Helper\Data $devHelper
+     * @param ScopeConfigInterface $scopeConfig
+     * @param StoreManagerInterface $storeManager
+     * @param DevHelper $devHelper
+     * @param DebugHintsFactory $debugHintsFactory
+     * @param string $debugHintsPath
      */
     public function __construct(
-        \Magento\Framework\ObjectManagerInterface $objectManager,
-        \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
-        \Magento\Store\Model\StoreManagerInterface $storeManager,
-        \Magento\Developer\Helper\Data $devHelper
+        ScopeConfigInterface $scopeConfig,
+        StoreManagerInterface $storeManager,
+        DevHelper $devHelper,
+        DebugHintsFactory $debugHintsFactory,
+        $debugHintsPath
     ) {
-        $this->objectManager = $objectManager;
         $this->scopeConfig = $scopeConfig;
         $this->storeManager = $storeManager;
         $this->devHelper = $devHelper;
+        $this->debugHintsFactory = $debugHintsFactory;
+        $this->debugHintsPath = $debugHintsPath;
     }
 
     /**
      * Wrap template engine instance with the debugging hints decorator, depending of the store configuration
      *
-     * @param \Magento\Framework\View\TemplateEngineFactory $subject
-     * @param \Magento\Framework\View\TemplateEngineInterface $invocationResult
+     * @param TemplateEngineFactory $subject
+     * @param TemplateEngineInterface $invocationResult
      *
-     * @return \Magento\Framework\View\TemplateEngineInterface
+     * @return TemplateEngineInterface
      * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function afterCreate(
-        \Magento\Framework\View\TemplateEngineFactory $subject,
-        \Magento\Framework\View\TemplateEngineInterface $invocationResult
+        TemplateEngineFactory $subject,
+        TemplateEngineInterface $invocationResult
     ) {
         $storeCode = $this->storeManager->getStore()->getCode();
-        if ($this->scopeConfig->getValue(self::XML_PATH_DEBUG_TEMPLATE_HINTS, ScopeInterface::SCOPE_STORE, $storeCode)
+        if ($this->scopeConfig->getValue($this->debugHintsPath, ScopeInterface::SCOPE_STORE, $storeCode)
             && $this->devHelper->isDevAllowed()) {
             $showBlockHints = $this->scopeConfig->getValue(
                 self::XML_PATH_DEBUG_TEMPLATE_HINTS_BLOCKS,
                 ScopeInterface::SCOPE_STORE,
                 $storeCode
             );
-            return $this->objectManager->create(
-                'Magento\Developer\Model\TemplateEngine\Decorator\DebugHints',
-                ['subject' => $invocationResult, 'showBlockHints' => $showBlockHints]
-            );
+            return $this->debugHintsFactory->create([
+                'subject' => $invocationResult,
+                'showBlockHints' => $showBlockHints,
+            ]);
         }
         return $invocationResult;
     }
diff --git a/app/code/Magento/Developer/etc/adminhtml/di.xml b/app/code/Magento/Developer/etc/adminhtml/di.xml
new file mode 100644
index 0000000000000000000000000000000000000000..ff22a95f0e92c698ff6d80185c0f5e505fca1e32
--- /dev/null
+++ b/app/code/Magento/Developer/etc/adminhtml/di.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/ObjectManager/etc/config.xsd">
+    <type name="Magento\Framework\View\TemplateEngineFactory">
+        <plugin name="debug_hints" type="Magento\Developer\Model\TemplateEngine\Plugin\DebugHints" sortOrder="10"/>
+    </type>
+    <type name="Magento\Developer\Model\TemplateEngine\Plugin\DebugHints">
+        <arguments>
+            <argument name="debugHintsPath" xsi:type="string">dev/debug/template_hints_admin</argument>
+        </arguments>
+    </type>
+</config>
diff --git a/app/code/Magento/Developer/etc/frontend/di.xml b/app/code/Magento/Developer/etc/frontend/di.xml
index 0c1a3a45d3b261f71ec977b2ee6a2201b6d37650..3fd5f545b9d04f1f9c68f9b2b969984c9ffaefba 100644
--- a/app/code/Magento/Developer/etc/frontend/di.xml
+++ b/app/code/Magento/Developer/etc/frontend/di.xml
@@ -9,4 +9,9 @@
     <type name="Magento\Framework\View\TemplateEngineFactory">
         <plugin name="debug_hints" type="Magento\Developer\Model\TemplateEngine\Plugin\DebugHints" sortOrder="10"/>
     </type>
+    <type name="Magento\Developer\Model\TemplateEngine\Plugin\DebugHints">
+        <arguments>
+            <argument name="debugHintsPath" xsi:type="string">dev/debug/template_hints_storefront</argument>
+        </arguments>
+    </type>
 </config>
diff --git a/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_constants.php b/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_constants.php
index 353b7bef2f399d008fcee3a39a21802e0b9cb333..fa4ee8e1c8825fe8f62bf1d774f654f9aa7139b5 100644
--- a/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_constants.php
+++ b/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_constants.php
@@ -168,7 +168,6 @@ return [
     [
         'XML_PATH_DEBUG_TEMPLATE_HINTS',
         'Magento\Framework\View\Element\Template',
-        'Magento\Core\Model\TemplateEngine\Plugin::XML_PATH_DEBUG_TEMPLATE_HINTS',
     ],
     [
         'XML_PATH_DEBUG_TEMPLATE_HINTS_BLOCKS',