diff --git a/Classes/Controller/MailController.php b/Classes/Controller/MailController.php
index 88f844f93d67904ce8cb61495b4b67ffc5383634..a2640b08d048221a1bfa0276d56222a35665a164 100644
--- a/Classes/Controller/MailController.php
+++ b/Classes/Controller/MailController.php
@@ -81,6 +81,7 @@ class MailController extends ActionController {
 		$selectedLanguageRight = NULL, $selectedExtensionKey = NULL, $selectedTemplateKey = NULL
 	) {
 		$siteRoot = BackendService::getSiteRoot((int) GeneralUtility::_GP('id'));
+		$siteRootId = $siteRoot['uid'];
 
 		if (!($this->session instanceof PhpSession)) {
 			$this->session = $this->objectManager->get('SGalinski\SgMail\Session\PhpSession');
@@ -131,10 +132,10 @@ class MailController extends ActionController {
 		$this->session->setDataByKey('selectedLanguageLeft', $selectedLanguageLeft);
 		$this->session->setDataByKey('selectedLanguageRight', $selectedLanguageRight);
 		$templateLeft = $this->templateRepository->findOneByTemplate(
-			$selectedExtension, $selectedTemplate, $selectedLanguageLeft
+			$selectedExtension, $selectedTemplate, $selectedLanguageLeft, $siteRootId
 		);
 		$templateRight = $this->templateRepository->findOneByTemplate(
-			$selectedExtension, $selectedTemplate, $selectedLanguageRight
+			$selectedExtension, $selectedTemplate, $selectedLanguageRight, $siteRootId
 		);
 
 		if ($templateLeft !== NULL) {
@@ -316,7 +317,7 @@ class MailController extends ActionController {
 	) {
 		/** @var Template $template */
 		$template = $this->templateRepository->findOneByTemplate(
-			$selectedExtension, $selectedTemplate, $selectedLanguage
+			$selectedExtension, $selectedTemplate, $selectedLanguage, $siteRootId
 		);
 
 		$templateAlreadyExists = TRUE;
diff --git a/Classes/Domain/Repository/MailRepository.php b/Classes/Domain/Repository/MailRepository.php
index ec019b521dae78d4eb4bd22c5d997cfae1af0c62..a611a204da83ee3c7ad405fb5514b7afc07ab2aa 100644
--- a/Classes/Domain/Repository/MailRepository.php
+++ b/Classes/Domain/Repository/MailRepository.php
@@ -55,7 +55,7 @@ class MailRepository extends AbstractRepository {
 	 *
 	 * @param string $extensionKey
 	 * @param string $templateName
-	 * @param int siteroot
+	 * @param int $siteroot
 	 * @param int $limit
 	 * @return array|QueryResultInterface
 	 */
diff --git a/Classes/Domain/Repository/TemplateRepository.php b/Classes/Domain/Repository/TemplateRepository.php
index 978b320f04302a393d5f0946cf4f2411dc39c7e3..6909d6b25140acf69bc8951e14038edb9009d370 100644
--- a/Classes/Domain/Repository/TemplateRepository.php
+++ b/Classes/Domain/Repository/TemplateRepository.php
@@ -38,10 +38,11 @@ class TemplateRepository extends AbstractRepository {
 	 * @param string $extensionKey
 	 * @param string $templateName
 	 * @param string $language
+	 * @param int $siteroot
 	 *
 	 * @return Template
 	 */
-	public function findOneByTemplate($extensionKey, $templateName, $language) {
+	public function findOneByTemplate($extensionKey, $templateName, $language, $siteroot = 0) {
 		$query = $this->createQuery();
 
 		$querySettings = $this->objectManager->get(Typo3QuerySettings::class);
@@ -50,6 +51,7 @@ class TemplateRepository extends AbstractRepository {
 		$constraintsAnd[] = $query->equals('extension_key', $extensionKey);
 		$constraintsAnd[] = $query->equals('template_name', $templateName);
 		$constraintsAnd[] = $query->equals('language', $language);
+		$constraintsAnd[] = $query->equals('site_root_id', (int) $siteroot);
 
 		$query->matching(
 			$query->logicalAnd($constraintsAnd)