diff --git a/openfisca_core/formulas.py b/openfisca_core/formulas.py
index <HASH>..<HASH> 100644
--- a/openfisca_core/formulas.py
+++ b/openfisca_core/formulas.py
@@ -501,11 +501,16 @@ class SimpleFormula(AbstractFormula):
                 ))
 
         try:
-            output_period, array = self.function(simulation, period)
+            formula_result = self.function(simulation, period)
         except:
             log.error(u'An error occurred while calling function {}@{}<{}>()'.format(entity.key_plural, column.name,
                 str(period)))
             raise
+        else:
+            try:
+                output_period, array = formula_result
+            except ValueError:
+                raise ValueError(u'A formula must return 2 values: period and array')
         assert output_period[1] <= period[1] <= output_period.stop, \
             u"Function {}@{}<{}>() --> <{}>{} returns an output period that doesn't include start instant of" \
             u"requested period".format(entity.key_plural, column.name, str(period), str(output_period),
Check for double formula return value explicitely