# Mongoose

# Defaults

Each `SchemaType` that you define (you can read more about them in the model definition chapter ) can have a default value.

Default values are applied when the document skeleton is constructed. This means that if you create a new document (`new MyModel`) or if you find an existing document (`MyModel.findById`), both will have defaults provided that a certain key is missing.

## Definition

You can define a default with a function:

    new Schema({
        date: { type: Date, default: Date.now }
    })

or a value:

    new Schema({
        date: { type: Date, default: '12/10/1990' }
    })

Notice that defaults are automatically casted. In both cases, the defaults will become actual `Date` objects, but we're passing a timestamp first, and a string date second.