diff --git a/openstackclient/common/utils.py b/openstackclient/common/utils.py
index cef9dcee4b..227b043870 100644
--- a/openstackclient/common/utils.py
+++ b/openstackclient/common/utils.py
@@ -77,7 +77,7 @@ def format_dict(data):
     """
 
     output = ""
-    for s in data:
+    for s in sorted(data):
         output = output + s + "='" + six.text_type(data[s]) + "', "
     return output[:-2]
 
@@ -89,7 +89,7 @@ def format_list(data):
     :rtype: a string formatted to a,b,c
     """
 
-    return ', '.join(data)
+    return ', '.join(sorted(data))
 
 
 def get_item_properties(item, fields, mixed_case_fields=[], formatters={}):
diff --git a/openstackclient/tests/common/test_utils.py b/openstackclient/tests/common/test_utils.py
index 6d75a9b5c9..e782d410bf 100644
--- a/openstackclient/tests/common/test_utils.py
+++ b/openstackclient/tests/common/test_utils.py
@@ -130,3 +130,15 @@ class TestFindResource(test_utils.TestCase):
                          str(result))
         self.manager.get.assert_called_with(self.name)
         self.manager.find.assert_called_with(name=self.name)
+
+    def test_format_dict(self):
+        expected = "a='b', c='d', e='f'"
+        self.assertEqual(expected,
+                         utils.format_dict({'a': 'b', 'c': 'd', 'e': 'f'}))
+        self.assertEqual(expected,
+                         utils.format_dict({'e': 'f', 'c': 'd', 'a': 'b'}))
+
+    def test_format_list(self):
+        expected = 'a, b, c'
+        self.assertEqual(expected, utils.format_list(['a', 'b', 'c']))
+        self.assertEqual(expected, utils.format_list(['c', 'b', 'a']))