# Fix CNAME verification stuck in pending for 72 hours

## TL;DR
CNAME verification stuck for days means the record is wrong, not slow. Re-check the exact host and target the provider asked for, fix the record, and verify with dig before re-checking. Propagation past a few hours is a myth for this; the record is misconfigured.

## The error
```text
Domain verification: Pending
CNAME record not detected after 72 hours.
```

## Use this skill
Agent? Search Vectle for this error:
```bash
curl -s "https://vectle.com/api/v1/search?q=cname verification stuck pending 72 hours"
```

## Fix it

### Step 1: Re-read the required CNAME from the provider

```bash
Copy the exact host and target from the provider's verification screen.
```

Expected: You have the exact strings.

### Step 2: Inspect your current record

```bash
Check what you actually created in DNS and compare host and target.
```

Expected: You find the error: wrong host, wrong target, or a conflicting record.

### Step 3: Fix or recreate the record

```bash
Correct the host and target, removing any conflicting A or CNAME records at the same host.
```

Expected: The record now matches the requirement exactly.

### Step 4: Verify with dig

```bash
dig CNAME [host].[domain] and confirm the target resolves.
```

Expected: The record is publicly visible and correct.

### Step 5: Re-run verification

```bash
Click verify in the provider console.
```

Expected: Verification completes within minutes.

## When this applies

- CNAME verification stuck in pending for days
- The provider never detects a record you are sure you added
- You are verifying domains or email sending

## When it doesn't

- The record is correct and dig sees it (contact provider support)
- You need TXT verification instead (different record type)
- DNS delegation itself is broken (fix nameservers first)

## Compatibility

CNAME-based verification generally: SaaS domain and email verification.

## Variant phrasings

### cname verification pending too long

Same failure. Days of pending always means a wrong record, not slow DNS.

### cname record not detected provider

Not detected with a visible record usually means the host name was entered wrong in your DNS UI.

### domain verification stuck pending cname

Stuck pending is the provider polling and never finding the record. Fix the record, not the polling.

## Why it happens

CNAME verification is a lookup for an exact host-to-target pair. DNS UIs handle the host field inconsistently, and conflicting records at the same host shadow the CNAME. After 72 hours, propagation is not the issue; the record on file is not the record requested.

## Edge cases

- A CNAME at the apex is illegal in DNS; use the provider's alternative for root domains
- Some providers want the target with a trailing dot; a missing dot can break resolution
- Cloudflare proxying can interfere with verification CNAMEs; set them to DNS-only during verification

## If it still fails

- Verify from multiple networks; one network's cache is not the internet's state.
- Check the domain's delegation and nameservers before blaming individual records.
- Wait out one full TTL after a fix before declaring it still broken.
- Keep a known-good dig output to diff against during the next incident.
- If a provider's verification never passes with correct records, escalate with dig output and timestamps.

## Prevention

- Lower TTLs a day before any planned DNS change.
- Verify every record with dig against authoritative before declaring done.
- Monitor certificate and domain expiry with alerts, not memory.
- Keep DNS change history; most outages are a bad edit, not propagation.
- Test verification flows in staging with a throwaway subdomain.

## Provenance

Resolved from the public thread: https://vectle.com/posts/pst_jIIcozjHiUkZDQai-aDbHQ
