diff --git a/addons/mail/models/mail_template.py b/addons/mail/models/mail_template.py
index 65ffe08e1e147c1597a4d589a2d43e0afa9b5185..148e63185979db7aca68c6d914d54067fbc516d2 100644
--- a/addons/mail/models/mail_template.py
+++ b/addons/mail/models/mail_template.py
@@ -300,7 +300,7 @@ class MailTemplate(models.Model):
 
         def _process_link(url):
             new_url = urls.url_parse(url)
-            if new_url.scheme and (new_url.netloc or new_url.scheme == 'mailto'):
+            if new_url.scheme and (new_url.netloc or new_url.scheme in ['mailto', 'tel']):
                 return url
             return new_url.replace(scheme=base.scheme, netloc=base.netloc).to_url()
 
diff --git a/addons/web_editor/static/src/js/editor/summernote.js b/addons/web_editor/static/src/js/editor/summernote.js
index 256d20f9d5f9992c95a3111c410337d52fdfe328..e6bca5e1563e02a41467b6fdf91867d6d2c750b4 100644
--- a/addons/web_editor/static/src/js/editor/summernote.js
+++ b/addons/web_editor/static/src/js/editor/summernote.js
@@ -2268,7 +2268,7 @@ $.summernote.pluginEvents.backColor = function (event, editor, layoutInfo, backC
 };
 
 options.onCreateLink = function (sLinkUrl) {
-    if (sLinkUrl.indexOf('mailto:') === 0) {
+    if (sLinkUrl.indexOf('mailto:') === 0 || sLinkUrl.indexOf('tel:') === 0) {
       // pass
     } else if (sLinkUrl.indexOf('@') !== -1 && sLinkUrl.indexOf(':') === -1) {
       sLinkUrl =  'mailto:' + sLinkUrl;