diff --git a/src/main/java/de/deadlocker8/budgetmaster/controller/AccountController.java b/src/main/java/de/deadlocker8/budgetmaster/controller/AccountController.java
index 83d5fcc94d6dd9f3bb468664c75f97f5846191ec..f163725229d1d41643780c72117cdcaf04493ee9 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/controller/AccountController.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/controller/AccountController.java
@@ -54,8 +54,16 @@ public class AccountController extends BaseController
 	@RequestMapping("/accounts/{ID}/delete")
 	public String deleteAccountAndReferringPayments(Model model, @PathVariable("ID") Integer ID)
 	{
-		accountService.deleteAccount(ID);
-		return "redirect:/accounts";
+		if(accountRepository.findAll().size() > 1)
+		{
+			accountService.deleteAccount(ID);
+			return "redirect:/accounts";
+		}
+
+		model.addAttribute("accounts", accountRepository.findAllByOrderByNameAsc());
+		model.addAttribute("currentAccount", accountRepository.getOne(ID));
+		model.addAttribute("accountNotDeletable", true);
+		return "accounts/accounts";
 	}
 
 	@RequestMapping("/accounts/newAccount")
diff --git a/src/main/java/de/deadlocker8/budgetmaster/services/AccountService.java b/src/main/java/de/deadlocker8/budgetmaster/services/AccountService.java
index a13900099da1dd48be5239827463431870087b5f..4aae54809df93a18b5dc2026c43f0d781384799f 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/services/AccountService.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/services/AccountService.java
@@ -1,5 +1,8 @@
 package de.deadlocker8.budgetmaster.services;
 
+import de.deadlocker8.budgetmaster.authentication.User;
+import de.deadlocker8.budgetmaster.authentication.UserRepository;
+import de.deadlocker8.budgetmaster.authentication.UserService;
 import de.deadlocker8.budgetmaster.entities.Account;
 import de.deadlocker8.budgetmaster.repositories.AccountRepository;
 import de.deadlocker8.budgetmaster.repositories.PaymentRepository;
@@ -19,12 +22,14 @@ public class AccountService implements Resetable
 	private final Logger LOGGER = LoggerFactory.getLogger(this.getClass());
 	private AccountRepository accountRepository;
 	private PaymentRepository paymentRepository;
+	private UserRepository userRepository;
 
 	@Autowired
-	public AccountService(AccountRepository accountRepository, PaymentRepository paymentRepository, LocalizationService localizationService)
+	public AccountService(AccountRepository accountRepository, PaymentRepository paymentRepository, UserRepository userRepository)
 	{
 		this.accountRepository = accountRepository;
 		this.paymentRepository = paymentRepository;
+		this.userRepository = userRepository;
 
 		createDefaults();
 	}
@@ -38,6 +43,12 @@ public class AccountService implements Resetable
 	{
 		Account accountToDelete = accountRepository.findOne(ID);
 		paymentRepository.delete(accountToDelete.getReferringPayments());
+
+		List<Account> accounts = accountRepository.findAll();
+		accounts.remove(accountToDelete);
+		Account newSelectedAccount = accounts.get(0);
+		selectAccount(newSelectedAccount.getID());
+
 		accountRepository.delete(ID);
 	}
 
@@ -71,5 +82,9 @@ public class AccountService implements Resetable
 		Account accountToSelect = accountRepository.findOne(ID);
 		accountToSelect.setSelected(true);
 		accountRepository.save(accountToSelect);
+
+		User user = userRepository.findByName("Default");
+		user.setSelectedAccount(accountToSelect);
+		userRepository.save(user);
 	}
 }
diff --git a/src/main/resources/languages/_de.properties b/src/main/resources/languages/_de.properties
index 42103169ce0790c5f1d92a7f007dd36ba8704e2a..f3c80ec1f088cf7bcdac5488c4d83abbe3157ecc 100644
--- a/src/main/resources/languages/_de.properties
+++ b/src/main/resources/languages/_de.properties
@@ -197,6 +197,7 @@ info.title.shutdown=BudgetMaster beenden
 info.text.shutdown=M�chtest du BudgetMaster wirklich beenden?\nDies kann w�hrend der Ausf�hrung von Aufgaben zu unvorhersebaren Konsequenzen f�hren.
 
 # WARNING
+warning.text.account.delete=Das Konto "{0}" kann nicht gel�scht werden, da mindestens ein Konto existieren muss. Um dieses Konto zu l�schen musst du zuerst ein neues anlegen.
 warning.enddate.before.startdate=Das Enddatum darf zeitlich nicht vor dem Startdatum liegen.
 warning.empty.width.in.pixels=Bitte gib eine Breite in Pixeln an.
 warning.integer.width.in.pixels=Nur ganzahlige Werte sind f�r das Feld Breite erlaubt.
diff --git a/src/main/resources/languages/_en.properties b/src/main/resources/languages/_en.properties
index 16f798a295035ff44c4dd7d91e1c4ecf0654db0f..a4bb2ec83b72c24256b931a340293ced94ad4693 100644
--- a/src/main/resources/languages/_en.properties
+++ b/src/main/resources/languages/_en.properties
@@ -197,6 +197,7 @@ info.title.shutdown=Shutdown BudgetMaster
 info.text.shutdown=Do you really want to shutdown BudgetMaster? This could lead to unforeseen consequences during running tasks.
 
 # WARNING
+warning.text.account.delete=The account "{0}" could not be deleted, because at least one account must exist at all time. You have to create a new account in order to delete this one.
 warning.enddate.before.startdate=The end date can not be earlier than the start date.
 warning.empty.width.in.pixels=Please enter a width in pixels.
 warning.integer.width.in.pixels=Only integer values are allowed for the width field.
diff --git a/src/main/resources/static/js/main.js b/src/main/resources/static/js/main.js
index bd3862a0bb91948ae89a2f73f6997947b8c0cc6a..e98a242745f593075900f57402b74f1a6b87a3bf 100644
--- a/src/main/resources/static/js/main.js
+++ b/src/main/resources/static/js/main.js
@@ -5,6 +5,8 @@ $( document ).ready(function() {
 
     $('.modal').modal();
 
+    $('.modal').modal('open');
+
     $('select').material_select();
 
     $("#selectAccount").on('change', function()
diff --git a/src/main/resources/templates/accounts/accounts.ftl b/src/main/resources/templates/accounts/accounts.ftl
index c7562c089b9410a1f96c9573481fdaf88415183b..c04ba4ad77ea4732a90705483f18c4f511bfdffa 100644
--- a/src/main/resources/templates/accounts/accounts.ftl
+++ b/src/main/resources/templates/accounts/accounts.ftl
@@ -32,25 +32,37 @@
                     </table>
                 </div>
             </div>
+        </main>
 
-            <#if currentAccount??>
-                <!-- confirm delete modal -->
-                <div id="modalConfirmDelete" class="modal">
-                    <div class="modal-content">
-                        <h4>${locale.getString("info.title.account.delete")}</h4>
-                        <p>${locale.getString("info.text.account.delete", currentAccount.getName(), currentAccount.getReferringPayments()?size)}</p>
-                    </div>
-                    <div class="modal-footer">
-                        <a href="/accounts" class="modal-action modal-close waves-effect waves-red btn-flat ">${locale.getString("cancel")}</a>
-                        <a href="/accounts/${currentAccount.getID()}/delete" class="modal-action modal-close waves-effect waves-green btn-flat ">${locale.getString("info.button.account.delete")}</a>
-                    </div>
+        <#if currentAccount??>
+            <!-- confirm delete modal -->
+            <div id="modalConfirmDelete" class="modal">
+                <div class="modal-content">
+                    <h4>${locale.getString("info.title.account.delete")}</h4>
+                    <p>${locale.getString("info.text.account.delete", currentAccount.getName(), currentAccount.getReferringPayments()?size)}</p>
                 </div>
-            </#if>
-        </main>
+                <div class="modal-footer">
+                    <a href="/accounts" class="modal-action modal-close waves-effect waves-red btn-flat ">${locale.getString("cancel")}</a>
+                    <a href="/accounts/${currentAccount.getID()}/delete" class="modal-action modal-close waves-effect waves-green btn-flat ">${locale.getString("info.button.account.delete")}</a>
+                </div>
+            </div>
+        </#if>
+
+        <#if accountNotDeletable??>
+            <!-- warning account not deletable -->
+            <div id="modalAccountNotDeletable" class="modal">
+                <div class="modal-content">
+                    <h4>${locale.getString("info.title.account.delete")}</h4>
+                    <p>${locale.getString("warning.text.account.delete", currentAccount.getName())}</p>
+                </div>
+                <div class="modal-footer">
+                    <a href="/accounts" class="modal-action modal-close waves-effect waves-green btn-flat ">${locale.getString("ok")}</a>
+                </div>
+            </div>
+        </#if>
 
         <!--  Scripts-->
         <#import "../scripts.ftl" as scripts>
         <@scripts.scripts/>
-        <script src="/js/categories.js"></script>
     </body>
 </html>
\ No newline at end of file