diff --git a/django/forms/fields.py b/django/forms/fields.py
index 49b31ccc59..ebc25610ee 100644
--- a/django/forms/fields.py
+++ b/django/forms/fields.py
@@ -528,6 +528,7 @@ class DurationField(Field):
     def prepare_value(self, value):
         if isinstance(value, datetime.timedelta):
             return duration_string(value)
+        return value
 
     def to_python(self, value):
         if value in self.empty_values:
diff --git a/tests/forms_tests/tests/test_fields.py b/tests/forms_tests/tests/test_fields.py
index 1d1f8febda..5bbf640463 100644
--- a/tests/forms_tests/tests/test_fields.py
+++ b/tests/forms_tests/tests/test_fields.py
@@ -640,6 +640,7 @@ class FieldsTests(SimpleTestCase):
         field = DurationField()
         td = datetime.timedelta(minutes=15, seconds=30)
         self.assertEqual(field.prepare_value(td), duration_string(td))
+        self.assertEqual(field.prepare_value('arbitrary'), 'arbitrary')
         self.assertIsNone(field.prepare_value(None))
 
     # RegexField ##################################################################