diff --git a/packages/qr-code-scanner/src/qr-code-scanner.js b/packages/qr-code-scanner/src/qr-code-scanner.js
index d318bc9740f5f88f494ddf691464e357fcdcabac..698f772d42a8066964b0204fe962011227ab85b3 100644
--- a/packages/qr-code-scanner/src/qr-code-scanner.js
+++ b/packages/qr-code-scanner/src/qr-code-scanner.js
@@ -212,6 +212,7 @@ export class QrCodeScanner extends ScopedElementsMixin(DBPLitElement) {
         const that = this;
         let lastVideoTime = -1;
         let lastCode = null;
+        let lastSentData = null;
 
         function tick() {
            that._requestID = null;
@@ -347,7 +348,9 @@ export class QrCodeScanner extends ScopedElementsMixin(DBPLitElement) {
                     outputMessage.hidden = true;
                     outputData.parentElement.hidden = false;
                     outputData.innerText = code.data;
-                    that.sendUrl(code.data);
+                    if (lastSentData !== code.data)
+                        that.sendUrl(code.data);
+                    lastSentData = code.data;
                 } else {
                     outputMessage.hidden = false;
                     outputData.parentElement.hidden = true;