diff --git a/src/i18next.defaults.js b/src/i18next.defaults.js
index <HASH>..<HASH> 100644
--- a/src/i18next.defaults.js
+++ b/src/i18next.defaults.js
@@ -48,6 +48,7 @@ var o = {
     cookieName: 'i18next',
     cookieDomain: undefined,
 
+    objectKeyHandler: undefined,
     postProcess: undefined,
     parseMissingKey: undefined,
 
diff --git a/src/i18next.translate.js b/src/i18next.translate.js
index <HASH>..<HASH> 100644
--- a/src/i18next.translate.js
+++ b/src/i18next.translate.js
@@ -282,6 +282,9 @@ function _find(key, options){
                 if (!o.returnObjectTrees && !options.returnObjectTrees) {
                     value = 'key \'' + ns + ':' + key + ' (' + l + ')\' ' +
                         'returned an object instead of string.';
+                    if (o.objectKeyHandler && typeof o.objectKeyHandler == 'function')
+                        value = o.objectKeyHandler(ns,key,l);
+                    }
                     f.log(value);
                 } else if (typeof value !== 'number') {
                     var copy = {}; // apply child translation on a copy
Possibility to catch key that return object rather than string