Typically the default value ObjectId is more ideal for the MongoDB _id ObjectId is a 12-byte BSON type, constructed using: A 4-byte value representing the seconds since the Unix epoch,A 3-byte machine identifier,A 2-byte process id, andA 3-byte counter, starting with a random value. The problem with creating an auto-incrementing _id is that it will be difficult to scale such a system , also it creates bottlenecks in parallel or distributed systems . Reference :http://docs.mongodb.org/manual/tutorial/create-an-auto-incrementing-field/