diff --git a/addons/survey/controllers/main.py b/addons/survey/controllers/main.py
index 901a7f3629aa1a7d6f194519fc46495d7bddb2c3..fafef3b95f7a45f1b4f17855af954a73c4460d78 100644
--- a/addons/survey/controllers/main.py
+++ b/addons/survey/controllers/main.py
@@ -99,7 +99,10 @@ class WebsiteSurvey(http.Controller):
 
         # Manual surveying
         if not token:
-            user_input_id = user_input_obj.create(cr, uid, {'survey_id': survey.id}, context=context)
+            vals = {'survey_id': survey.id}
+            if request.website.user_id.id != uid:
+                vals['partner_id'] = request.registry['res.users'].browse(cr, uid, uid, context=context).partner_id.id
+            user_input_id = user_input_obj.create(cr, uid, vals, context=context)
             user_input = user_input_obj.browse(cr, uid, [user_input_id], context=context)[0]
         else:
             try: