diff --git a/src/main/java/de/deadlocker8/budgetmaster/templates/TemplateController.java b/src/main/java/de/deadlocker8/budgetmaster/templates/TemplateController.java
index e31ae9a985bfd40bb679ac4ee2d47941cfebe6cb..388cdf278e3a40afc744fdfea20a00198ab37093 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/templates/TemplateController.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/templates/TemplateController.java
@@ -63,10 +63,11 @@ public class TemplateController extends BaseController
 	}
 
 	@PostMapping(value = "/templates/fromTransaction")
-	public String postNormal(Model model,
-							 @RequestParam(value = "templateName") String templateName,
+	public String postNormal(@RequestParam(value = "templateName") String templateName,
 							 @ModelAttribute("NewTransaction") Transaction transaction,
-							 @RequestParam(value = "isPayment", required = false) boolean isPayment)
+							 @RequestParam(value = "isPayment", required = false) boolean isPayment,
+							 @RequestParam(value = "ignoreCategory") Boolean ignoreCategory,
+							 @RequestParam(value = "ignoreAccount") Boolean ignoreAccount)
 	{
 		transactionService.handleAmount(transaction, isPayment);
 		transactionService.handleTags(transaction);
@@ -76,9 +77,7 @@ public class TemplateController extends BaseController
 			throw new ResponseStatusException(HttpStatus.BAD_REQUEST, "templateName must not be empty");
 		}
 
-		final Template template = new Template(templateName, transaction);
-		templateService.getRepository().save(template);
-
+		templateService.createFromTransaction(templateName, transaction, ignoreCategory, ignoreAccount);
 		return "redirect:/templates";
 	}
 
diff --git a/src/main/java/de/deadlocker8/budgetmaster/templates/TemplateService.java b/src/main/java/de/deadlocker8/budgetmaster/templates/TemplateService.java
index 19cb398dc72581d4bb87ce5588ca3fd397165de0..bbeb9803a8d882018d617558ed29b417db80e118 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/templates/TemplateService.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/templates/TemplateService.java
@@ -1,6 +1,7 @@
 package de.deadlocker8.budgetmaster.templates;
 
 import de.deadlocker8.budgetmaster.services.Resetable;
+import de.deadlocker8.budgetmaster.transactions.Transaction;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -33,4 +34,20 @@ public class TemplateService implements Resetable
 	public void createDefaults()
 	{
 	}
+
+	public void createFromTransaction(String templateName, Transaction transaction, boolean ignoreCategory, boolean ignoreAccount)
+	{
+		final Template template = new Template(templateName, transaction);
+		if(ignoreCategory)
+		{
+			template.setCategory(null);
+		}
+
+		if(ignoreAccount)
+		{
+			template.setAccount(null);
+		}
+
+		getRepository().save(template);
+	}
 }
diff --git a/src/main/resources/languages/_de.properties b/src/main/resources/languages/_de.properties
index d820a9a1a79aff478d94616f94c1f4d8f38e646d..66d619c26e4518b9ce4307463a2118a428f9588c 100644
--- a/src/main/resources/languages/_de.properties
+++ b/src/main/resources/languages/_de.properties
@@ -246,6 +246,9 @@ search.in.description=Beschreibung
 search.in.category=Kategorie
 search.in.tags=Tags
 
+template.checkbox.ignore.category=Kategorie nicht übernehmen
+template.checkbox.ignore.account=Konto nicht übernehmen
+
 # ABOUT
 about=Über {0}
 about.roadmap.link=Roadmap öffnen
diff --git a/src/main/resources/languages/_en.properties b/src/main/resources/languages/_en.properties
index bd3553199eca85e6639cbc60348398bdebe15a55..8356570c7549f7a362c48c45ce47e4dea6ab1007 100644
--- a/src/main/resources/languages/_en.properties
+++ b/src/main/resources/languages/_en.properties
@@ -246,6 +246,9 @@ search.in.description=Description
 search.in.category=Category
 search.in.tags=Tags
 
+template.checkbox.ignore.category=Omit selected category
+template.checkbox.ignore.account=Omit selected account
+
 # ABOUT
 about=About {0}
 about.roadmap.link=Open Roadmap
diff --git a/src/main/resources/static/js/templates.js b/src/main/resources/static/js/templates.js
index 31b7ea7c017144f700e520a216465f49f642dc23..496d4ecd0c96761d85f2417d3fa3372d169e1356 100644
--- a/src/main/resources/static/js/templates.js
+++ b/src/main/resources/static/js/templates.js
@@ -24,30 +24,37 @@ $(document).ready(function()
                 data: {},
                 success: function(data)
                 {
-                    $('#saveAsTemplateModalContainer').html(data);
-                    $('#modalCreateFromTransaction').modal();
-                    $('#modalCreateFromTransaction').modal('open');
-                    let templateNameInput = document.getElementById('template-name');
-                    templateNameInput.focus();
-                    $(templateNameInput).on('keypress', function(e)
-                    {
-                        let code = e.keyCode || e.which;
-                        if(code === 13)
-                        {
-                            saveAsTemplate();
-                        }
-                    });
-
-                    $('#buttonCreateTemplate').click(function()
-                    {
-                        saveAsTemplate();
-                    });
+                   createAndOpenModal(data)
                 }
             });
         });
     }
 });
 
+function createAndOpenModal(data)
+{
+    let modalID = '#modalCreateFromTransaction';
+
+    $('#saveAsTemplateModalContainer').html(data);
+    $(modalID).modal();
+    $(modalID).modal('open');
+    let templateNameInput = document.getElementById('template-name');
+    templateNameInput.focus();
+    $(templateNameInput).on('keypress', function(e)
+    {
+        let code = e.keyCode || e.which;
+        if(code === 13)
+        {
+            saveAsTemplate();
+        }
+    });
+
+    $('#buttonCreateTemplate').click(function()
+    {
+        saveAsTemplate();
+    });
+}
+
 function saveAsTemplate()
 {
     // validate template name
@@ -58,18 +65,13 @@ function saveAsTemplate()
         return
     }
 
-    // insert additional input for template name
-    let inputTemplateName = document.createElement('input');
-    inputTemplateName.setAttribute('type', 'hidden');
-    inputTemplateName.setAttribute('name', 'templateName');
-    inputTemplateName.setAttribute('value', templateName);
-
     let form = document.getElementsByName('NewTransaction')[0];
-    form.appendChild(inputTemplateName);
+    form.appendChild(createAdditionalHiddenInput('templateName', templateName));
+    form.appendChild(createAdditionalHiddenInput('ignoreCategory', document.getElementById('ignore-category').checked));
+    form.appendChild(createAdditionalHiddenInput('ignoreAccount', document.getElementById('ignore-account').checked));
 
     // replace form target url
     form.action = $('#buttonCreateTemplate').attr('data-url');
-
     form.submit();
 }
 
@@ -96,4 +98,13 @@ function validateTemplateName(templateName)
     }
 
     return true;
+}
+
+function createAdditionalHiddenInput(name, value)
+{
+    let newInput = document.createElement('input');
+    newInput.setAttribute('type', 'hidden');
+    newInput.setAttribute('name', name);
+    newInput.setAttribute('value', value);
+    return newInput;
 }
\ No newline at end of file
diff --git a/src/main/resources/templates/templates/createFromTransactionModal.ftl b/src/main/resources/templates/templates/createFromTransactionModal.ftl
index 6e1165f8ac395b98775ea45f711852f2ef297d32..c82f42f2f1035e7a4d2b07ebc0870d6a04a77a55 100644
--- a/src/main/resources/templates/templates/createFromTransactionModal.ftl
+++ b/src/main/resources/templates/templates/createFromTransactionModal.ftl
@@ -10,6 +10,18 @@
                 <input id="template-name" type="text" name="templateName">
                 <label for="template-name">${locale.getString("transaction.new.label.name")}</label>
             </div>
+            <div class="col s12">
+                <label>
+                    <input id="ignore-category" type="checkbox">
+                    <span class="columnName-checkbox-label text-color">${locale.getString('template.checkbox.ignore.category')}</span>
+                </label>
+            </div>
+            <div class="col s12">
+                <label>
+                    <input id="ignore-account" type="checkbox" checked="checked">
+                    <span class="columnName-checkbox-label text-color">${locale.getString('template.checkbox.ignore.account')}</span>
+                </label>
+            </div>
         </div>
     </div>
     <div class="modal-footer background-color">
diff --git a/src/main/resources/templates/transactions/newTransactionNormal.ftl b/src/main/resources/templates/transactions/newTransactionNormal.ftl
index 04a0fddc14607a9988809da6a89d8024a4522b7e..e0117da12c956f55b934255f35f174af4ebc9d62 100644
--- a/src/main/resources/templates/transactions/newTransactionNormal.ftl
+++ b/src/main/resources/templates/transactions/newTransactionNormal.ftl
@@ -5,6 +5,7 @@
         <@header.style "transactions"/>
         <@header.style "datepicker"/>
         <@header.style "categories"/>
+        <@header.style "filter"/>
         <#import "/spring.ftl" as s>
     </head>
     <body class="budgetmaster-blue-light">
diff --git a/src/main/resources/templates/transactions/newTransactionTransfer.ftl b/src/main/resources/templates/transactions/newTransactionTransfer.ftl
index 5c2c6333babcd314319d2ee427ca42862b1716cf..2b4fd1240bfa357d8deaff53fb7f62be40dd1281 100644
--- a/src/main/resources/templates/transactions/newTransactionTransfer.ftl
+++ b/src/main/resources/templates/transactions/newTransactionTransfer.ftl
@@ -5,6 +5,7 @@
         <@header.style "transactions"/>
         <@header.style "datepicker"/>
         <@header.style "categories"/>
+        <@header.style "filter"/>
         <#import "/spring.ftl" as s>
     </head>
     <body class="budgetmaster-blue-light">