diff --git a/src/nf_modules/g2gtools/main.nf b/src/nf_modules/g2gtools/main.nf
index 39a1c7e609acf0fea5795dd8660dca4f418fc26f..8954ceec2c3128d0ff79af79a56592566267c7de 100644
--- a/src/nf_modules/g2gtools/main.nf
+++ b/src/nf_modules/g2gtools/main.nf
@@ -59,4 +59,61 @@ g2gtools transform \
   -c ${vci} \
   -o ${file_id}_snp_indel.fasta
 """
+}
+
+process convert_gtf {
+  container = "${container_url}"
+  label "big_mem_mono_cpus"
+  tag "$file_id"
+
+  input:
+    tuple val(file_id), path(vci)
+    tuple val(annot_id), path(gtf)
+  output:
+    tuple val(file_id), path("${file_id}.gtf"), emit: gtf
+  script:
+"""
+g2gtools convert \
+  -i ${gtf} \
+  -c ${vci} \
+  -o ${file_id}.gtf
+"""
+}
+
+process convert_bed {
+  container = "${container_url}"
+  label "big_mem_mono_cpus"
+  tag "$file_id"
+
+  input:
+    tuple val(file_id), path(vci)
+    tuple val(annot_id), path(bed)
+  output:
+    tuple val(file_id), path("${file_id}.bed"), emit: bed
+  script:
+"""
+g2gtools convert \
+  -i ${bed} \
+  -c ${vci} \
+  -o ${file_id}.bed
+"""
+}
+
+process convert_bam {
+  container = "${container_url}"
+  label "big_mem_mono_cpus"
+  tag "${bam_id} ${file_id}"
+
+  input:
+    tuple val(file_id), path(vci)
+    tuple val(bam_id), path(bam)
+  output:
+    tuple val(file_id), path("${file_id}_${bam_id}.bam"), emit: bam
+  script:
+"""
+g2gtools convert \
+  -i ${bam} \
+  -c ${vci} \
+  -o ${file_id}_${bam_id}.bam
+"""
 }
\ No newline at end of file