diff --git a/beat/core/algorithm.py b/beat/core/algorithm.py
index 30680348343f0399a088998b0ec1ac878c9d5b93..13caa5a49e00f4816843f497471a67c4a5369bbb 100644
--- a/beat/core/algorithm.py
+++ b/beat/core/algorithm.py
@@ -49,6 +49,7 @@ Forward importing from :py:mod:`beat.backend.python.algorithm`
 
 import os
 import six
+import sys
 import json
 import numpy
 import pkg_resources
@@ -64,9 +65,12 @@ from beat.backend.python.algorithm import Algorithm as BackendAlgorithm
 
 
 def load_algorithm_prototype(prefix):
-    algorithm_data = json.loads(
-        pkg_resources.resource_string(__name__, "prototypes/algorithm.json")
-    )
+
+    prototype_data = pkg_resources.resource_string(__name__, "prototypes/algorithm.json")
+    if sys.version_info < (3, 6):
+        prototype_data = prototype_data.decode("utf-8")
+
+    algorithm_data = json.loads(prototype_data)
     ref_dataformats = ["integer", "integers"]
     dataformat = None