diff --git a/smash/web/importer/csv_subject_import_reader.py b/smash/web/importer/csv_subject_import_reader.py
index 03741b71bca29c5997758b775ac1f57fbc466da2..74e02edc480b91bc52771faa28063051d9409dc7 100644
--- a/smash/web/importer/csv_subject_import_reader.py
+++ b/smash/web/importer/csv_subject_import_reader.py
@@ -1,10 +1,10 @@
 import csv
 import datetime
 import logging
+from typing import List
 
+from web.models import StudySubject, Subject, SubjectImportData
 from .subject_import_reader import SubjectImportReader
-from web.models import StudySubject, Subject, Study, SubjectImportData
-from web.models.constants import GLOBAL_STUDY_ID
 
 CSV_DATE_FORMAT = "%d-%m-%Y"
 
@@ -15,7 +15,7 @@ class CsvSubjectImportReader(SubjectImportReader):
     def __init__(self, import_data: SubjectImportData):
         super().__init__(import_data)
 
-    def load_data(self):
+    def load_data(self) -> List[StudySubject]:
         study_subjects = []
         with open(self.import_data.get_absolute_file_path()) as csv_file:
             reader = csv.reader(csv_file, delimiter=self.import_data.csv_delimiter)
@@ -32,8 +32,7 @@ class CsvSubjectImportReader(SubjectImportReader):
                 study_subjects.append(study_subject)
         return study_subjects
 
-    def add_data(self, study_subject, column_name, value):
-        # type: (StudySubject, str, str) ->  None
+    def add_data(self, study_subject: StudySubject, column_name: str, value: str):
         if column_name == "first_name":
             study_subject.subject.first_name = self.get_new_value(study_subject.subject.first_name, column_name, value)
         elif column_name == "last_name":
@@ -46,8 +45,7 @@ class CsvSubjectImportReader(SubjectImportReader):
         else:
             logger.warning("Don't know how to handle column " + column_name + " with data " + value)
 
-    def get_new_value(self, old_value, column_name, new_value):
-        # type: (unicode,unicode,unicode) ->  unicode
+    def get_new_value(self, old_value: str, column_name: str, new_value: str) -> str:
         if old_value is None or old_value == "":
             return new_value
         if new_value is None or new_value == "":
@@ -57,8 +55,7 @@ class CsvSubjectImportReader(SubjectImportReader):
             "). Latest value will be used")
         return new_value
 
-    def get_new_date_value(self, old_value, column_name, new_value):
-        # type: (datetime,unicode,unicode) ->  datetime
+    def get_new_date_value(self, old_value: datetime, column_name: str, new_value: str) -> datetime:
         if old_value is None or old_value == "":
             try:
                 result = datetime.datetime.strptime(new_value, CSV_DATE_FORMAT)
diff --git a/smash/web/importer/csv_tns_subject_import_reader.py b/smash/web/importer/csv_tns_subject_import_reader.py
index 1dd70e307eff836fa151d2530fd50e464c971f7b..33f29abef9654c78908f8ae128bf29f2efeb5ae3 100644
--- a/smash/web/importer/csv_tns_subject_import_reader.py
+++ b/smash/web/importer/csv_tns_subject_import_reader.py
@@ -2,9 +2,9 @@ import codecs
 import csv
 import datetime
 import logging
+from typing import List
 
-from web.models import StudySubject, Subject, Study, SubjectImportData
-from web.models.constants import GLOBAL_STUDY_ID
+from web.models import StudySubject, Subject, SubjectImportData
 from .subject_import_reader import SubjectImportReader
 
 CSV_DATE_FORMAT = "%d/%m/%Y"
@@ -16,7 +16,7 @@ class TnsCsvSubjectImportReader(SubjectImportReader):
     def __init__(self, import_data: SubjectImportData):
         super().__init__(import_data)
 
-    def load_data(self):
+    def load_data(self) -> List[StudySubject]:
         study_subjects = []
         with open(self.import_data.get_absolute_file_path()) as csv_file:
             reader = csv.reader((remove_bom(line) for line in csv_file), delimiter=self.import_data.csv_delimiter)
@@ -33,8 +33,7 @@ class TnsCsvSubjectImportReader(SubjectImportReader):
                 study_subjects.append(study_subject)
         return study_subjects
 
-    def add_data(self, study_subject, column_name, value):
-        # type: (StudySubject, str, str) ->  None
+    def add_data(self, study_subject: StudySubject, column_name: str, value: str):
         if column_name == "firstname" or column_name == "sig_firstname":
             study_subject.subject.first_name = self.get_new_value(study_subject.subject.first_name, column_name, value)
         elif column_name == "lastname" or column_name == "sig_lastname":
@@ -66,8 +65,7 @@ class TnsCsvSubjectImportReader(SubjectImportReader):
         else:
             logger.warning("Don't know how to handle column " + column_name + " with data " + value)
 
-    def get_new_value(self, old_value, column_name, new_value):
-        # type: (unicode,unicode,unicode) ->  unicode
+    def get_new_value(self, old_value: str, column_name: str, new_value: str) -> str:
         if old_value is None or old_value == "":
             return new_value
         if new_value is None or new_value == "":
@@ -79,8 +77,7 @@ class TnsCsvSubjectImportReader(SubjectImportReader):
             "). Latest value will be used")
         return new_value
 
-    def get_new_date_value(self, old_value, column_name, new_value):
-        # type: (datetime,unicode,unicode) ->  datetime
+    def get_new_date_value(self, old_value: datetime, column_name: str, new_value: str) -> datetime:
         if old_value is None or old_value == "":
             try:
                 result = datetime.datetime.strptime(new_value, CSV_DATE_FORMAT)