diff --git a/smwrappers/explore_mapping_parameters/wrapper.py b/smwrappers/explore_mapping_parameters/wrapper.py
index 177b65dc7abd514421baaaf7958c4de7851dd639..12bf14a6e5bd135a03b870f164a0f064967f3a77 100644
--- a/smwrappers/explore_mapping_parameters/wrapper.py
+++ b/smwrappers/explore_mapping_parameters/wrapper.py
@@ -56,11 +56,10 @@ echo -e "${{rate}}\\t{snakemake.params.these_settings}" >> {snakemake.params.rat
 
 
 def split_on_tab(s):
-    # https://stackoverflow.com/a/15095537/1878788
-    return s.split(b'\t')
+    return s.strip().split("\t")
 
 
-with NamedTemporaryFile() as fastq, NamedTemporaryFile() as rates_record:
+with NamedTemporaryFile() as fastq, NamedTemporaryFile(mode="w+t") as rates_record:
     snakemake.params.fastq = fastq.name
     # Take the first 10000 reads from the input
     # https://stackoverflow.com/a/46621920/1878788
@@ -75,7 +74,7 @@ with NamedTemporaryFile() as fastq, NamedTemporaryFile() as rates_record:
         for (rate, settings)
         in map(split_on_tab, rates_record))
     with open(snakemake.output.mapping_params, "w") as fh:
-        fh.write(f"{best_settings}\t({best_rate}%%)\n")
+        fh.write(f"{best_settings}\t({best_rate}%)\n")
 
 if hasattr(snakemake.output, "methods"):
     shell(f"cp {snakemake.input.methods} {snakemake.output.methods}")