> For the complete documentation index, see [llms.txt](https://docs.dnscontrol.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.dnscontrol.org/language-reference/domain-modifiers/defaultttl.md).

# DefaultTTL

DefaultTTL sets the Time To Live (TTL) for all subsequent records following it in a domain that do not explicitly set one with [`TTL`](/language-reference/record-modifiers/ttl.md). If neither `DefaultTTL` or `TTL` exist for a record, the record will inherit the DNSControl global internal default of 300 seconds. See also [`DEFAULTS`](/language-reference/top-level-functions/defaults.md) to override the internal defaults.

NS records are currently a special case, and do not inherit from `DefaultTTL`. See [`NAMESERVER_TTL`](/language-reference/domain-modifiers/nameserver_ttl.md) to set a default TTL for all NS records.

{% code title="dnsconfig.js" %}

```javascript
D("example.com", REG_MY_PROVIDER, DnsProvider(DSP_MY_PROVIDER),
  DefaultTTL("4h"),
  A("@","1.2.3.4"), // uses default
  A("foo", "2.3.4.5", TTL(600)), // overrides default
);
```

{% endcode %}

The DefaultTTL duration is the same format as [`TTL`](/language-reference/record-modifiers/ttl.md), an integer number of seconds or a string with a unit such as `"4d"`.
