diff -r 956e97430c68 django/core/serializers/json.py
--- a/django/core/serializers/json.py	Fri Aug 06 09:33:05 2010 +1000
+++ b/django/core/serializers/json.py	Fri Aug 06 10:27:58 2010 +1000
@@ -21,6 +21,11 @@
         self.options.pop('stream', None)
         self.options.pop('fields', None)
         self.options.pop('use_natural_keys', None)
+        if self.options.get('indent'): 
+            # The default is (', ', ': ').  To eliminate useless whitespaces 
+            # after comma, the representation is changed to (',', ': ') only 
+            # if indent is used 
+            self.options['separators'] = (',', ': ') 
         simplejson.dump(self.objects, self.stream, cls=DjangoJSONEncoder, **self.options)
 
     def getvalue(self):
diff -r 956e97430c68 tests/modeltests/serializers/models.py
--- a/tests/modeltests/serializers/models.py	Fri Aug 06 09:33:05 2010 +1000
+++ b/tests/modeltests/serializers/models.py	Fri Aug 06 10:27:58 2010 +1000
@@ -8,6 +8,7 @@
 
 from decimal import Decimal
 from django.db import models
+from django.test.testcases import TestCase
 
 class Category(models.Model):
     name = models.CharField(max_length=20)
@@ -342,3 +343,32 @@
 except ImportError:
     pass
 
+
+
+_json_expected="""[
+  {
+    "pk": 1,
+    "model": "serializers.score",
+    "fields": {
+      "score": 5.0
+    }
+  },
+  {
+    "pk": 2,
+    "model": "serializers.score",
+    "fields": {
+      "score": 6.0
+    }
+  }
+]"""
+
+
+class TestJsonSerializerIndentation(TestCase):
+    def test_indentation_whitespace(self):
+        from django.core.serializers.json import Serializer
+        Score.objects.create(score=5.0)
+        Score.objects.create(score=6.0)
+        qset = Score.objects.all()
+        
+        s = Serializer()
+        self.assertEqual(s.serialize(qset,indent=2),_json_expected)
