Skip to main content

DNS Zone Cleanup in HostBible: Fix Duplicates, Conflicting Records, and Common Formatting Errors

If you imported DNS records into HostBible (or your DNS answers just look “off”), a quick zone cleanup can prevent hard‑to‑trace issues like random/rotating answers, broken verification, or records being ignored.

Z
Written by Zoe Handscomb
Updated over 3 months ago

This guide is focused on DNS record hygiene inside the HostBible Zone Editor:

  • detecting and removing duplicates

  • resolving CNAME conflicts

  • fixing incorrect hostnames / formatting mistakes

  • cleaning up mis-set or inconsistent TTLs

Not covered in this article: changing nameservers at your registrar, propagation/caching behavior, or DNSSEC DS updates.


When should you do a DNS cleanup?

Use this workflow when:

  • you imported a zone (zone file, copy/paste, bulk add) and now see repeated or messy entries

  • your site/email/verification worked before, but the HostBible zone now contains “extra” records you don’t recognize

  • you see obvious formatting oddities like www.example.com.example.com

  • you want a more consistent, maintainable TTL strategy (without chasing one-off values)


Before you start: define what “correct” looks like

A cleanup goes fastest if you know which services the domain should support. Make a simple checklist like:

  • Website: root (@) and/or www

  • Email: MX + SPF/DKIM/DMARC (if used)

  • App/verification: TXT records (ownership checks, app verification)

  • Special subdomains: api, app, blog, mail, etc.

Safety tip: Before editing, copy the current record list somewhere safe (notes doc). If your HostBible Zone Editor has an export/copy feature, use it.


Open the HostBible Zone Editor

  1. Log in to HostBible

  2. Go to your domain’s management page

  3. Open DNSZone Editor (wording may vary slightly)

You should see a list of records with columns like:

  • Name/Host

  • Type (A, AAAA, CNAME, MX, TXT, etc.)

  • Value/Target

  • TTL

  • Actions (Edit/Delete)


Step-by-step cleanup workflow

1) Start with the “money records”: root and www

These two names are where conflicts and duplicates show up most often.

What to look for

  • Multiple records at @ (root) that you didn’t intend

  • www having both a CNAME and an A/AAAA record

  • www pointing somewhere unexpected (old IP, old hostname)

Why it matters

If @ or www contains conflicting or duplicated data, users may land on the wrong destination (or get inconsistent results depending on which answer is returned).


2) Detect duplicates (true duplicates vs intentional multiples)

A “true duplicate” looks like:

Same Name + Type + Value repeated, often with different TTLs.

Example (duplicate A record):

  • @ — A — 192.0.2.10 — TTL 60

  • @ — A — 192.0.2.10 — TTL 3600

Fix: Keep one and delete the extra. Pick the TTL you want to standardize on (see TTL section below).

A “conflicting duplicate” looks like:

Same Name + Type, but different values that don’t match your intent.

Example (conflicting A records):

  • @ — A — 192.0.2.10

  • @ — A — 198.51.100.25

Fix:

  • If you intentionally use multiple A/AAAA records (rare for simple setups), confirm they are correct.

  • If not intentional, remove the outdated destination.

Special note: multiple records can be valid

Some record types commonly have “multiple” entries on purpose:

  • MX: multiple priorities for failover

  • TXT: several unrelated TXT records can exist at the same name (but duplicates are still bad)

  • A/AAAA: can be multiple, but should be deliberate

Quick duplicate cleanup rule

If you can’t explain why a record exists, treat it as suspicious and verify it before keeping it.


3) Fix CNAME conflicts (a very common zone-breaker)

The rule

A CNAME record should be the only record at that exact name.

If a hostname has a CNAME and also has another record type (A/AAAA/TXT/MX/etc.), that’s a conflict. Many DNS systems will ignore one of them or behave unpredictably.

Common conflict pattern: www

Problem example:

  • www — CNAME — @

  • www — A — 192.0.2.10

Why it’s a problem: www is trying to be both an alias (CNAME) and a direct address (A).

Fix (choose one approach):

  • Keep www CNAME → @ or

  • Keep www A/AAAA → your destination
    …and delete the other record(s).

Another conflict pattern: “verification TXT” on a CNAME name

Problem example:

  • shop — CNAME — some-target.example.net

  • shop — TXT — verification=...

Fix: Verification TXT usually needs its own compatible name. Either:

  • move verification to a different hostname that does not use CNAME, or

  • replace the CNAME approach if the TXT is required at that exact name

(If you’re unsure which one your service needs, check the instructions from the service you’re integrating with.)


4) Correct common hostname formatting mistakes

Formatting mistakes usually show up after imports or when records were copied from a different format.

Mistake A: Double-appended domains

Problem you might see in the record list or preview:
www.example.com.example.com

Why it happens: The editor is treating what you typed as a relative name and appending the zone name again.

Fix: Use the short host label:

  • Use www (not www.example.com)

  • Use @ (or the zone’s “root” option) for the apex/root record

Mistake B: Putting http:// or https:// into record values

DNS records never include URL schemes.

Wrong: https://app.example.com
Right: app.example.com (for CNAME targets) or an IP address (for A/AAAA)

Mistake C: Trailing dots handled inconsistently

Some DNS inputs use a trailing dot to indicate a fully-qualified name (FQDN), like target.example.com.

Hygiene tip: Whatever HostBible accepts, keep it consistent. If you notice some CNAME targets have a trailing dot and others don’t, standardize to one style so you avoid accidental mismatches during future edits.

Mistake D: Underscore records typed incorrectly (very common for email/security)

Records like these must be exact:

  • _dmarc

  • selector1._domainkey

  • _acme-challenge

Common errors:

  • missing underscore (dmarc instead of _dmarc)

  • placing it under the wrong name (e.g., adding _dmarc.example.com in a field that already appends the domain)

  • adding extra dots

Fix: Match the hostname exactly as provided by the service, then confirm the final rendered name in HostBible’s record list.


5) Audit email records for collisions (MX / SPF / DKIM / DMARC)

Even if your website loads fine, messy email records can cause silent failures.

MX record hygiene

  • Ensure MX records exist only where intended (usually at root @)

  • Remove old MX hosts you no longer use

  • Keep priorities sensible (lower number = higher priority)

SPF (TXT) hygiene

SPF is typically a TXT record at the root.

Duplicate SPF is a common problem:

  • @ — TXT — v=spf1 ... -all

  • @ — TXT — v=spf1 ... ~all

Why it matters: Multiple SPF TXT records can break SPF evaluation.

Fix: Combine into one SPF policy record (only if you know what you’re doing), or remove the incorrect/old one and keep the intended single record.

DKIM hygiene

DKIM records are usually TXT at a selector name like:

  • selector1._domainkey

Cleanup targets:

  • remove unused selectors (only if you’re sure they’re no longer used)

  • remove duplicates of the same selector TXT record

DMARC hygiene

DMARC is TXT at:

  • _dmarc

Cleanup targets:

  • remove duplicates

  • ensure the policy record starts with v=DMARC1;


6) TTL cleanup (keep this about record hygiene)

TTL isn’t just a performance knob—messy TTLs make DNS harder to maintain.

What “bad TTL hygiene” looks like

  • Mixed TTLs for records that should be treated similarly (some 60s, some 3600s, some 86400s)

  • Very low TTLs left behind from troubleshooting (e.g., 30–60 seconds) on stable, long-lived records

  • Inconsistent TTL strategy where no one can tell which values are intentional

Practical TTL hygiene guidelines

  • Pick a default TTL that fits your normal change cadence (many teams use something like 1 hour as a baseline, but your standard may differ)

  • Use exceptions intentionally (e.g., only a specific record needs a different TTL)

  • If you see multiple identical records with different TTLs, keep one record and set the TTL to your chosen standard

Goal: Consistency and clarity—so future edits don’t turn into guesswork.


7) Remove stale records you no longer use

Imports often bring in old “temporary” records that should not live forever:

  • old verification TXT tokens

  • deprecated subdomains (old app, dev, staging)

  • legacy mail hosts

  • records for services you no longer run

Safe approach: If you’re unsure, remove in small batches and document what you changed (name/type/value), so it’s easy to reverse.


Before/After example: cleaning a messy zone

Before (common post-import mess)

  • @ — A — 192.0.2.10 — TTL 60

  • @ — A — 192.0.2.10 — TTL 3600 (duplicate)

  • www — A — 192.0.2.10 — TTL 3600

  • www — CNAME — @ — TTL 3600 (conflict)

  • _dmarc — TXT — v=DMARC1; p=none; ... — TTL 3600

  • _dmarc — TXT — v=DMARC1; p=none; ... — TTL 3600 (duplicate)

  • ftp.example.com — CNAME — @ (name formatting likely wrong if the editor appends the domain)

After (clean + predictable)

  • @ — A — 192.0.2.10 — TTL 3600 (kept one, standardized TTL)

  • www — CNAME — @ — TTL 3600 (removed the conflicting A record)

  • _dmarc — TXT — v=DMARC1; p=none; ... — TTL 3600 (kept one)

  • ftp — CNAME — @ — TTL 3600 (fixed hostname formatting)


Quick checklist: “Zone looks wrong” cleanup

  • Root (@) and www point where you expect

  • No exact duplicates (same Name/Type/Value repeated)

  • No CNAME conflicts (CNAME is not sharing a name with other record types)

  • Hostnames are formatted correctly (no double domain, no https://, correct underscores)

  • Email records are coherent (MX, SPF, DKIM, DMARC—no duplicates where they shouldn’t be)

  • TTLs follow a consistent strategy (no leftover ultra-low TTLs unless intentional)


Need help validating what to keep?

If you’re unsure which record is correct, the safest move is to gather:

  • the list of records you want reviewed (or a screenshot of the HostBible Zone Editor list)

  • what services the domain should run (website, email provider, verification needs)

Then contact HostBible support with that info so we can help you identify what’s safe to remove and what must remain.

Did this answer your question?