diff --git a/utils/fix-translations.py b/utils/fix-translations.py
new file mode 100755
index 0000000000000000000000000000000000000000..1200bd5d7bf0ef69d7e62932853ba87122d3c617
--- /dev/null
+++ b/utils/fix-translations.py
@@ -0,0 +1,62 @@
+#!/usr/bin/env python3
+"""
+One time script to fix window title translation strings in CopyQ.
+
+Removes unneeded application from window titles from translation files.
+
+The application name is added to the title by using
+QGuiApplication::setApplicationDisplayName().
+"""
+from glob import glob
+import re
+
+import xml.etree.ElementTree as ET
+
+
+def main():
+    prefix = re.compile('^CopyQ\\s*')
+    suffix = re.compile('\\s*CopyQ$')
+    sources = {
+        "CopyQ About",
+        "CopyQ Action Dialog",
+        "CopyQ Add Commands",
+        "CopyQ Clipboard Content",
+        "CopyQ Commands",
+        "CopyQ Configuration",
+        "CopyQ Export Error",
+        "CopyQ Import Error",
+        "CopyQ Item Content",
+        "CopyQ Log",
+        "CopyQ New Tab",
+        "CopyQ New Shortcut",
+        "CopyQ Options for Export",
+        "CopyQ Options for Import",
+        "CopyQ Process Manager",
+        "CopyQ Rename Tab",
+        "CopyQ Rename Tab Group",
+        "CopyQ Select Icon",
+    }
+
+    for fn in glob('translations/*.ts'):
+        tree = ET.parse(fn)
+        root = tree.getroot()
+        for context in root.iter('context'):
+            for message in context.iter('message'):
+                source = message.find('source')
+                if source.text in sources:
+                    tr = message.find('translation')
+                    if not tr.text:
+                        continue
+
+                    source.text = re.sub(prefix, '', source.text)
+                    tr.text = re.sub(prefix, '', tr.text)
+                    tr.text = re.sub(suffix, '', tr.text)
+                    if tr.text[0].islower():
+                        tr.text = tr.text[0].upper() + tr.text[1:]
+                    tr.set('type', 'unfinished')
+
+        tree.write(fn)
+
+
+if __name__ == "__main__":
+    main()