diff --git a/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/config/ResourceConfig.java b/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/config/ResourceConfig.java
index ac058ee..56052b3 100644
--- a/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/config/ResourceConfig.java
+++ b/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/config/ResourceConfig.java
@@ -16,21 +16,42 @@
 
 import lombok.extern.log4j.Log4j2;
 import org.eclipse.openk.gridfailureinformation.service.DistributionTextPlaceholderService;
+import org.eclipse.openk.gridfailureinformation.util.ResourceLoaderBase;
 import org.eclipse.openk.gridfailureinformation.viewmodel.DistributionTextPlaceholderDto;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 
+import javax.annotation.PostConstruct;
+
 @Log4j2
 @Configuration
 public class ResourceConfig {
 
+    private static final String EMAIL_BTN_TEMPLATE_PATH = "email/emailTemplateBtn.html";
+
+    @Value("${spring.settings.isUseHtmlEmailBtnTemplate:true}")
+    private boolean isUseHtmlEmailBtnTemplate;
+
     @Autowired
     DistributionTextPlaceholderService placeholderService;
 
+    private String htmlEmailBtnTemplate;
+
     @Bean
     public DistributionTextPlaceholderDto placeholderLoader() {
         return placeholderService.getPlaceholder();
     }
 
+    @PostConstruct
+    private void init(){
+        if (isUseHtmlEmailBtnTemplate) {
+            htmlEmailBtnTemplate = new ResourceLoaderBase().loadStringFromResource(EMAIL_BTN_TEMPLATE_PATH);
+        }
+    }
+
+    public String getHtmlEmailBtnTemplate() {
+        return htmlEmailBtnTemplate;
+    }
 }
diff --git a/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/service/ExportService.java b/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/service/ExportService.java
index 28c3afd..22b5abf 100644
--- a/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/service/ExportService.java
+++ b/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/service/ExportService.java
@@ -42,6 +42,7 @@
 import org.eclipse.openk.gridfailureinformation.repository.StatusRepository;
 import org.eclipse.openk.gridfailureinformation.util.ExternalStatusCalculator;
 import org.eclipse.openk.gridfailureinformation.util.GroupMemberPlzFilter;
+import org.eclipse.openk.gridfailureinformation.util.ResourceLoaderBase;
 import org.eclipse.openk.gridfailureinformation.viewmodel.DistributionGroupMemberDto;
 import org.eclipse.openk.gridfailureinformation.viewmodel.DistributionTextPlaceholderDto;
 import org.eclipse.openk.gridfailureinformation.viewmodel.FailureInformationDto;
@@ -57,6 +58,8 @@
 
 import java.text.DateFormat;
 import java.text.SimpleDateFormat;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.HashMap;
@@ -138,6 +141,9 @@
     @Value("${distribution-group-publisher.name}")
     private String publisherDistributionGroup;
 
+    @Value("${spring.settings.isUseHtmlEmailBtnTemplate:true}")
+    private boolean isUseHtmlEmailBtnTemplate;
+
     public boolean exportFailureInformation(UUID uuid, String[] targetChannels, GfiProcessState processState){
         log.info("Start exporting failureInformation with uuid: " + uuid);
         countExportedMessages = 0;
@@ -526,11 +532,20 @@
             contentReplaceMap.put(placeholderDto.getRadius(), radius.getRadius().toString());
         }
 
-        String directFailureLink = authNAuthService.getDirectMeasureLink(tblFailureInfo.getUuid().toString());
-        contentReplaceMap.put(placeholderDto.getDirectFailureLink(), directFailureLink);
+        createDirectFailureLink(tblFailureInfo, placeholderDto);
 
     }
 
+    private void createDirectFailureLink(TblFailureInformation tblFailureInfo,
+                                         DistributionTextPlaceholderDto placeholderDto) {
+        String directFailureLink = authNAuthService.getDirectMeasureLink(tblFailureInfo.getUuid().toString());
+        if (isUseHtmlEmailBtnTemplate) {
+            String htmlEmailBtnTemplate = resourceConfig.getHtmlEmailBtnTemplate();
+            directFailureLink = htmlEmailBtnTemplate.replace(placeholderDto.getDirectFailureLink(), directFailureLink);
+        }
+        contentReplaceMap.put(placeholderDto.getDirectFailureLink(), directFailureLink);
+    }
+
     private String getStatusExtern(TblFailureInformation tblFailureInfo) {
         FailureInformationDto failureInformationDto = failureInformationMapper.toFailureInformationDto(tblFailureInfo);
         return ExternalStatusCalculator.addExternalStatus(statusRepository, failureInformationDto);
diff --git a/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/util/ResourceLoaderBase.java b/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/util/ResourceLoaderBase.java
index 5f06ea0..64a47e9 100644
--- a/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/util/ResourceLoaderBase.java
+++ b/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/util/ResourceLoaderBase.java
@@ -36,10 +36,10 @@
 
     private String stream2String(InputStream is, String filename) {
         StringWriter writer = new StringWriter();
-        BOMInputStream bomInputStream = new BOMInputStream(is, false, ByteOrderMark.UTF_8, ByteOrderMark.UTF_16BE, ByteOrderMark.UTF_16LE,
-            ByteOrderMark.UTF_32BE, ByteOrderMark.UTF_32LE);
 
-        try {
+        try (BOMInputStream bomInputStream = new BOMInputStream(is, false,
+                ByteOrderMark.UTF_8, ByteOrderMark.UTF_16BE, ByteOrderMark.UTF_16LE,
+                ByteOrderMark.UTF_32BE, ByteOrderMark.UTF_32LE)) {
             IOUtils.copy(bomInputStream, writer, StandardCharsets.UTF_8.name());
         } catch (IOException e) {
             log.error("Fehler in stream2String()", e);
diff --git a/gfsBackendService/src/main/resources/application.yml b/gfsBackendService/src/main/resources/application.yml
index 903142a..f6114ed 100644
--- a/gfsBackendService/src/main/resources/application.yml
+++ b/gfsBackendService/src/main/resources/application.yml
@@ -54,45 +54,30 @@
     overviewMapInitialLongitude: 8.423207
     daysInPastToShowClosedInfos: 365
     dataExternInitialVisibility: hide
-    
+
+    isUseHtmlEmailBtnTemplate: true
     # Mail settings (Default templates)
     emailSubjectPublishInit: "Die Störung (Sparte: $Sparte$) mit Beginn: $Störungsbeginn_gemeldet$ wurde in den Status veröffentlicht geändert."
-    emailContentPublishInit: "Veröffentlicht [TEST]\n
-
-    Sehr geehrte Damen und Herren,\n
-    
-    die im Betreff genannte Meldung ist über folgenden Link erreichbar:\n
-    
-    $Direkter_Link_zur_Störung$\n
-    
-    Mit freundlichen Grüßen
-
-    Ihre Admin-Meister-Team der PTA GmbH"
+    emailContentPublishInit: "<p><b>Veröffentlicht [TEST]</b></p>
+                              <p>Sehr geehrte Damen und Herren,</p>
+                              <p>die im Betreff genannte Meldung ist über folgenden Link erreichbar:</p>
+                              $Direkter_Link_zur_Störung$
+                              <p>Mit freundlichen Grüßen</p>
+                              <p>Ihr Admin-Meister-Team der PTA GmbH</p>"
     emailSubjectUpdateInit: "Die Störung (Sparte: $Sparte$) mit Beginn: $Störungsbeginn_gemeldet$ wurde in den Status aktualisiert geändert."
-    emailContentUpdateInit: "Aktualisiert [TEST]\n
-
-    Sehr geehrte Damen und Herren,\n
-
-    die im Betreff genannte Meldung ist über folgenden Link erreichbar:\n
-
-    $Direkter_Link_zur_Störung$\n
-
-    Mit freundlichen Grüßen
-    
-    Ihr Admin-Meister-Team der PTA GmbH"
-
+    emailContentUpdateInit: "<p><b>Aktualisiert [TEST]</b></p>
+                             <p>Sehr geehrte Damen und Herren,</p>
+                             <p>die im Betreff genannte Meldung ist über folgenden Link erreichbar:</p>
+                             $Direkter_Link_zur_Störung$
+                             <p>Mit freundlichen Grüßen</p>
+                             <p>Ihr Admin-Meister-Team der PTA GmbH</p>"
     emailSubjectCompleteInit: "Die Störung (Sparte: $Sparte$) mit Beginn: $Störungsbeginn_gemeldet$ wurde in den Status beendet geändert."
-    emailContentCompleteInit: "Beendet [TEST]\n
-
-    Sehr geehrte Damen und Herren,\n
-
-    die im Betreff genannte Meldung ist über folgenden Link erreichbar:\n
-
-    $Direkter_Link_zur_Störung$\n
-
-    Mit freundlichen Grüßen
-    
-    Ihr Admin-Meister-Team der PTA GmbH"
+    emailContentCompleteInit: "<p><b>Beendet [TEST]</b></p>
+                              <p>Sehr geehrte Damen und Herren,</p>
+                              <p>die im Betreff genannte Meldung ist über folgenden Link erreichbar:</p>
+                              $Direkter_Link_zur_Störung$
+                              <p>Mit freundlichen Grüßen</p>
+                              <p>Ihr Admin-Meister-Team der PTA GmbH</p>"
 
     visibilityConfiguration:
       fieldVisibility:
diff --git a/gfsBackendService/src/main/resources/application_localdev.yml b/gfsBackendService/src/main/resources/application_localdev.yml
index ecc1e0b..dfac132 100644
--- a/gfsBackendService/src/main/resources/application_localdev.yml
+++ b/gfsBackendService/src/main/resources/application_localdev.yml
@@ -13,8 +13,8 @@
 backend-version: 1.0.0
 spring:
   datasource:
-    url: jdbc:postgresql://entopticadirx:5432/GridFailureInfoDevelop
-    #url: jdbc:postgresql://entopticadirx:5432/GridFailureInfoDevServer
+    #url: jdbc:postgresql://entopticadirx:5432/GridFailureInfoDevelop
+    url: jdbc:postgresql://entopticadirx:5432/GridFailureInfoDevServer
     username: ${GFI_DB_USERNAME}
     password: ${GFI_DB_PASSWORD}
     max-active: 5
@@ -50,44 +50,30 @@
     overviewMapInitialLongitude: 8.423207
     daysInPastToShowClosedInfos: 365
     dataExternInitialVisibility: hide
+
+    isUseHtmlEmailBtnTemplate: true
     # Initial emailsubject and content
     emailSubjectPublishInit: "Die Störung (Sparte: $Sparte$) mit Beginn: $Störungsbeginn_gemeldet$ wurde in den Status veröffentlicht geändert."
-    emailContentPublishInit: "Veröffentlicht [TEST]\n
-
-    Sehr geehrte Damen und Herren,\n
-
-    die im Betreff genannte Meldung ist über folgenden Link erreichbar:\n
-
-    $Direkter_Link_zur_Störung$\n
-
-    Mit freundlichen Grüßen
-
-    Ihre Admin-Meister-Team der PTA GmbH"
+    emailContentPublishInit: "<b>Veröffentlicht [TEST]</b><br>
+                              <p> Sehr geehrte Damen und Herren,</p>
+                              <p>die im Betreff genannte Meldung ist über folgenden Link erreichbar:</p>
+                              $Direkter_Link_zur_Störung$
+                              <p>Mit freundlichen Grüßen</p>
+                              <p>Ihr Admin-Meister-Team der PTA GmbH</p>"
     emailSubjectUpdateInit: "Die Störung (Sparte: $Sparte$) mit Beginn: $Störungsbeginn_gemeldet$ wurde in den Status aktualisiert geändert."
-    emailContentUpdateInit: "Aktualisiert [TEST]\n
-
-    Sehr geehrte Damen und Herren,\n
-
-    die im Betreff genannte Meldung ist über folgenden Link erreichbar:\n
-
-    $Direkter_Link_zur_Störung$\n
-
-    Mit freundlichen Grüßen
-
-    Ihr Admin-Meister-Team der PTA GmbH"
-
+    emailContentUpdateInit: "<b>Aktualisiert [TEST]</b><br>
+                             <p> Sehr geehrte Damen und Herren,</p>
+                             <p>die im Betreff genannte Meldung ist über folgenden Link erreichbar:</p>
+                             $Direkter_Link_zur_Störung$
+                             <p>Mit freundlichen Grüßen</p>
+                             <p>Ihr Admin-Meister-Team der PTA GmbH</p>"
     emailSubjectCompleteInit: "Die Störung (Sparte: $Sparte$) mit Beginn: $Störungsbeginn_gemeldet$ wurde in den Status beendet geändert."
-    emailContentCompleteInit: "Beendet [TEST]\n
-
-    Sehr geehrte Damen und Herren,\n
-
-    die im Betreff genannte Meldung ist über folgenden Link erreichbar:\n
-
-    $Direkter_Link_zur_Störung$\n
-
-    Mit freundlichen Grüßen
-
-    Ihr Admin-Meister-Team der PTA GmbH"
+    emailContentCompleteInit: "<b>Beendet [TEST]</b><br>
+                              <p> Sehr geehrte Damen und Herren,</p>
+                              <p>die im Betreff genannte Meldung ist über folgenden Link erreichbar:</p>
+                              $Direkter_Link_zur_Störung$
+                              <p>Mit freundlichen Grüßen</p>
+                              <p>Ihr Admin-Meister-Team der PTA GmbH</p>"
 
     visibilityConfiguration:
       fieldVisibility:
diff --git a/gfsBackendService/src/main/resources/db/migration/V0_62__CREATE_GFI_DB_Complete_V_1.0.0.sql b/gfsBackendService/src/main/resources/db/migration/V0_62__CREATE_GFI_DB_Complete_V_1.0.0.sql
index 5a6f0a6..228b92c 100644
--- a/gfsBackendService/src/main/resources/db/migration/V0_62__CREATE_GFI_DB_Complete_V_1.0.0.sql
+++ b/gfsBackendService/src/main/resources/db/migration/V0_62__CREATE_GFI_DB_Complete_V_1.0.0.sql
@@ -372,6 +372,14 @@
   OWNER TO GFI_SERVICE;
 GRANT ALL ON TABLE public.TBL_DISTRIBUTION_GROUP TO GFI_SERVICE;
 
+INSERT INTO public.tbl_distribution_group(UUID, NAME, EMAIL_SUBJECT_PUBLISH, DISTRIBUTION_TEXT_PUBLISH)
+VALUES('f71660e2-aee1-11ea-b3de-0242ac130004', 'Veröffentlicher', 'Bitte Anpassen - Das geplannte Ende der Störung (Sparte: $Sparte$) wird demnächst erreicht. Der Statuswechsel erfolgt automatisch.',
+'<b>Veröffentlichen</b><br>
+<p>Sehr geehrte Damen und Herren,</p>
+<p>die im Betreff genannte Meldung ist über folgenden Link erreichbar:</p>
+$Direkter_Link_zur_Störung$
+<p>Mit freundlichen Grüßen</p>
+<p>Ihr Admin-Meister-Team der PTA GmbH</p>');
 
 -- ---------------------------------------------
 -- TABLE TBL_DISTRIBUTION_GROUP_MEMBER
@@ -402,19 +410,6 @@
   OWNER TO GFI_SERVICE;
 GRANT ALL ON TABLE public.TBL_DISTRIBUTION_GROUP_MEMBER TO GFI_SERVICE;
 
-INSERT INTO public.tbl_distribution_group(UUID, NAME, EMAIL_SUBJECT_PUBLISH, DISTRIBUTION_TEXT_PUBLISH)
-VALUES('f71660e2-aee1-11ea-b3de-0242ac130004', 'Veröffentlicher', 'Subject: Bitte Anpassen - Das geplannte Ende der Störung (Sparte: $Sparte$) wird demnächst erreicht. Der Statuswechsel erfolgt automatisch.',
-'Body:
-Veröffentlicher
-
-Sehr geehrte Damen und Herren,
-
-die im Betreff genannte Meldung ist über folgenden Link erreichbar:
-
-$Direkter_Link_zur_Störung$
-
-Mit freundlichen Grüßen');
-
 -- ---------------------------------------------
 -- TABLE TBL_FAILURE_INFORMATION_DISTRIBUTION_GROUP
 -- ---------------------------------------------
diff --git a/gfsBackendService/src/main/resources/email/emailTemplateBtn.html b/gfsBackendService/src/main/resources/email/emailTemplateBtn.html
new file mode 100644
index 0000000..291c905
--- /dev/null
+++ b/gfsBackendService/src/main/resources/email/emailTemplateBtn.html
@@ -0,0 +1,17 @@
+<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; box-sizing: border-box;">
+  <tbody>
+    <tr>
+      <td align="center" style="font-family: sans-serif; font-size: 14px; vertical-align: top; padding: 15px 0;">
+        <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: auto;">
+          <tbody>
+            <tr>
+              <td class="btn btn-primary" style="font-family: sans-serif; font-size: 14px; vertical-align: top; background-color: #337ab7; border-radius: 5px; text-align: center; padding: 0;">
+                <a href="$Direkter_Link_zur_Störung$" target="_blank" style="display: inline-block; color: #ffffff; background-color: #337ab7; border: solid 1px #2e6da4; border-radius: 5px; box-sizing: border-box; cursor: pointer; text-decoration: none; font-size: 14px; font-weight: bold; margin: 0; padding: 12px 25px; text-transform: capitalize; border-color: #2e6da4;">zur Störungsmeldung</a>
+              </td>
+            </tr>
+          </tbody>
+        </table>
+      </td>
+    </tr>
+  </tbody>
+</table>
diff --git a/mailExport/src/main/java/org/eclipse/openk/gridfailureinformation/mailexport/util/ResourceLoaderBase.java b/mailExport/src/main/java/org/eclipse/openk/gridfailureinformation/mailexport/util/ResourceLoaderBase.java
index e341217..9ae045a 100644
--- a/mailExport/src/main/java/org/eclipse/openk/gridfailureinformation/mailexport/util/ResourceLoaderBase.java
+++ b/mailExport/src/main/java/org/eclipse/openk/gridfailureinformation/mailexport/util/ResourceLoaderBase.java
@@ -36,10 +36,10 @@
 
     private String stream2String(InputStream is, String filename) {
         StringWriter writer = new StringWriter();
-        BOMInputStream bomInputStream = new BOMInputStream(is, false, ByteOrderMark.UTF_8, ByteOrderMark.UTF_16BE, ByteOrderMark.UTF_16LE,
-            ByteOrderMark.UTF_32BE, ByteOrderMark.UTF_32LE);
 
-        try {
+        try (BOMInputStream bomInputStream = new BOMInputStream(is, false,
+                ByteOrderMark.UTF_8, ByteOrderMark.UTF_16BE, ByteOrderMark.UTF_16LE,
+                ByteOrderMark.UTF_32BE, ByteOrderMark.UTF_32LE)) {
             IOUtils.copy(bomInputStream, writer, StandardCharsets.UTF_8.name());
         } catch (IOException e) {
             log.error("Fehler in stream2String()", e);
