Reverse-engineer a company's sales and marketing tech stack
Tech Stack Recon

Reverse-engineer a company's sales and marketing tech stack from public signals. Detects CRMs, cold email tools, people databases, ad pixels, email delivery services, and outbound sending domains via DNS records, website source…
--- name: tech-stack-teardown description: > Reverse-engineer a company's sales and marketing tech stack from public signals. Detects CRMs, cold email tools, people databases, ad pixels, email delivery services, and outbound sending domains via DNS records, website source inspection, Apify technology profiling, blacklist checks, and public spam complaint searches. Works on single companies or batches. Outputs a structured markdown report per company. tags: [competitive-intel] --- # Tech Stack Recon Reverse-engineer a company's sales, marketing, and outbound infrastructure from public signals. No login, no API access to their tools needed — everything is derived from DNS records, website source code, technology profiling, blacklist databases, and public complaints. ## What It Detects | Category | Tools Detected |
Overview
Reverse-engineer a company's sales, marketing, and outbound infrastructure from public signals. No login, no API access to their tools needed — everything is derived from DNS records, website source code, technology profiling, blacklist databases, and public complaints.
Manual install (npx, ZIP)
npx skills add gooseworks-ai/goose-skills --skill tech-stack-teardown -g -a claude-codemkdir -p ~/.claude/skills && curl -sL https://codeload.github.com/gooseworks-ai/goose-skills/tar.gz/615c685f34f8 \
| tar -xz -C ~/.claude/skills --strip-components=4 goose-skills-615c685f34f8/skills/competitive-intel/capabilities/tech-stack-teardownNew-Item -ItemType Directory -Force "$HOME\.claude\skills" | Out-Null; Invoke-WebRequest "https://m.agentalley.io/zip/12ca6ef695b33ac7e5b7/tech-stack-teardown.zip" -OutFile "$env:TEMP\tech-stack-teardown.zip"; Expand-Archive "$env:TEMP\tech-stack-teardown.zip" -DestinationPath "$HOME\.claude\skills" -ForceConnects with Agent Alley MCP · agentalley.io/mcp
Files included
SKILL.md12.1 KBskill.meta.json270 Bscripts/1 file · 23.1 KB
Read the files here
Show the full text326 lines
Tech Stack Recon
Reverse-engineer a company's sales, marketing, and outbound infrastructure from public signals. No login, no API access to their tools needed — everything is derived from DNS records, website source code, technology profiling, blacklist databases, and public complaints.
What It Detects
| Category | Tools Detected |
|---|---|
| CRM | HubSpot, Salesforce (via SPF, website pixels, DNS) |
| Cold Email Tools | Smartlead, Instantly, Outreach, Salesloft, Lemlist (via SPF, DKIM, TXT records, website source) |
| People Databases | Apollo, ZoomInfo, Clearbit, 6sense (via website tracker scripts) |
| Email Delivery | SendGrid, Amazon SES, Postmark, Mailgun, Mandrill (via SPF includes, DKIM selectors) |
| Email Marketing | Mailchimp, Brevo, ActiveCampaign, Klaviyo (via DKIM selectors) |
| Ad Retargeting | LinkedIn Insight Tag, Facebook Pixel, AdRoll, Reddit Ads, Twitter Ads (via Apify profiler + source) |
| Website Builder | Webflow, Framer, Next.js, WordPress (via Apify profiler + source) |
| Chat / Support | Intercom, Drift, Crisp, Zendesk (via website source) |
| Analytics | Google Analytics, Segment, Mixpanel, Amplitude, PostHog, Heap (via website source) |
| Outbound Domains | Separate cold sending domains (via SPF-only Google Workspace + redirect to primary) |
How It Works
The skill runs 5 layers of detection, each revealing different signals:
Layer 1: DNS Records (Free, instant)
MX → Primary email provider (Google Workspace, Microsoft 365, etc.)
SPF → Every service authorized to send email on their behalf
DKIM → Cryptographic proof of which tools actually send email
DMARC → Email authentication policy (how strict they are)
TXT → Misc verifications (Smartlead tracking domains, tool verifications)
CNAME → Subdomains pointing to third-party services
This is the highest-signal layer. SPF and DKIM don't lie — if SendGrid is in their SPF, they use SendGrid.
Layer 2: Website Source Inspection (Free, instant)
Fetches the target website and searches HTML for:
- Tracking pixels (Apollo, REB2B, HubSpot, Facebook, LinkedIn)
- Script tags loading third-party tools
- Meta tags and framework signatures
- Hidden form handlers and API endpoints
Layer 3: Apify Technology Profiler (Pay-per-use, ~$0.005/domain)
Runs justa/technology-profiling-engine actor for deep detection of 7,000+ technologies using 8-tier inspection with confidence scores. Catches tools that don't appear in source code (loaded dynamically, via GTM, etc.).
Layer 4: Blacklist Checks (Free, instant)
Queries 6 major DNS-based blacklists:
- Spamhaus (zen.spamhaus.org)
- Barracuda (b.barracudacentral.org)
- SpamCop (bl.spamcop.net)
- SORBS (dnsbl.sorbs.net)
- SURBL (multi.surbl.org)
- URIBL (black.uribl.com)
Layer 5: Public Complaint Search (Free)
Web searches for spam complaints on Trustpilot, Reddit, SpamCop forums, and general web. Also searches for the company + tool names to find public mentions of their stack.
Cost
| Component | Cost |
|---|---|
| DNS queries | Free |
| Website source fetch | Free |
| Blacklist checks | Free |
| Web searches | Free |
| Apify Technology Profiler | ~$0.005 per domain |
Typical costs:
| Scenario | Domains | Est. Cost |
|---|---|---|
| Single company | 1 | ~$0.005 |
| Small batch | 5 | ~$0.025 |
| Large batch | 20 | ~$0.10 |
Skip the Apify profiler with --no-apify for free-only analysis (DNS + source + blacklists).
Setup
1. Required
# dig (DNS lookups) — included on macOS/Linux
which dig
# curl (website source fetch) — included on macOS/Linux
which curl
# Python 3 with requests + dotenv
pip3 install requests python-dotenv
2. Optional (for Apify Technology Profiler)
# Get your token at https://console.apify.com/account/integrations
# Add to .env:
APIFY_API_TOKEN=apify_api_YOUR_TOKEN_HERE
Usage
Single Company
python3 scripts/recon.py --domains pump.co
Batch of Companies
python3 scripts/recon.py --domains "dili.ai,pump.co,runautomat.com"
Free-Only Mode (No Apify)
python3 scripts/recon.py --domains pump.co --no-apify
Output to File
python3 scripts/recon.py --domains "dili.ai,pump.co" --output /path/to/report.md
JSON Output
python3 scripts/recon.py --domains pump.co --json
What the Script Does
For each domain:
- DNS Scan — Queries MX, SPF, DKIM (18 common selectors), DMARC, TXT records, and 30+ common subdomains (email, tracking, click, bounce, send, smtp, mail, etc.)
- Website Source Scan — Fetches the homepage HTML and greps for 40+ known tool signatures (script URLs, pixel IDs, tracking domains)
- Apify Technology Profile (optional) — Runs deep 8-tier technology detection for 7,000+ technologies with confidence scores
- Blacklist Check — Queries 6 DNS-based blacklists for the domain
- Outbound Domain Detection — Checks if common variations of the domain exist (get[name].com, try[name].com, [name]reach.com, etc.) and analyzes their DNS for cold outbound patterns
- Report Generation — Produces a structured markdown report with confirmed tools, evidence, email auth assessment, blacklist status, and an overall assessment
Agent Integration
When using this skill as an agent, follow this flow:
- User provides one or more company domains
- Run
recon.pyfor all domains (confirm Apify cost if > 5 domains) - Present the report — group findings by:
- Confirmed tools (with evidence)
- Email authentication (SPF/DKIM/DMARC assessment)
- Deliverability (blacklist status + spam complaints)
- Notable signals (outbound domains, missing DMARC, SPF gaps)
- If batch, include a comparative summary table at the end
Agent Without the Script
The agent can perform all checks manually using built-in tools:
DNS checks — Use Bash tool:
dig +short MX example.com
dig +short TXT example.com
dig +short TXT _dmarc.example.com
dig +short TXT selector._domainkey.example.com
dig +short CNAME subdomain.example.com
Website source scan — Use Bash tool:
curl -sL https://www.example.com | grep -oi 'pattern1\|pattern2\|pattern3' | sort -u
Blacklist checks — Use Bash tool:
dig +short example.com.zen.spamhaus.org A
Apify profiler — Use Bash tool with Python:
# See scripts/recon.py for the full implementation
Spam complaints — Use WebSearch tool:
"example.com" spam OR unsolicited OR "cold email" OR blacklist
DNS Record Cheat Sheet
SPF Includes → Tool Identification
| SPF Include | Tool |
|---|---|
_spf.google.com |
Google Workspace |
spf.protection.outlook.com |
Microsoft 365 |
sendgrid.net |
SendGrid |
amazonses.com |
Amazon SES |
*.hubspotemail.net |
HubSpot |
*.rsgsv.net or servers.mcsv.net |
Mailchimp/Mandrill |
spf.mandrillapp.com |
Mandrill (Mailchimp transactional) |
mail.zendesk.com |
Zendesk |
*.freshdesk.com |
Freshdesk |
spf.mailjet.com |
Mailjet |
spf.brevo.com |
Brevo (Sendinblue) |
_spf.salesforce.com |
Salesforce |
mktomail.com |
Marketo |
postmarkapp.com |
Postmark |
mailgun.org |
Mailgun |
DKIM Selectors → Tool Identification
| Selector Pattern | Tool |
|---|---|
google._domainkey |
Google Workspace |
selector1._domainkey / selector2._domainkey |
Microsoft 365 |
s1._domainkey / s2._domainkey → *.sendgrid.net |
SendGrid |
k1._domainkey → *.mcsv.net or dkim.mcsv.net |
Mailchimp |
k2._domainkey / k3._domainkey → dkim2.mcsv.net / dkim3.mcsv.net |
Mailchimp |
mandrill._domainkey |
Mandrill |
pm._domainkey |
Postmark |
smtp._domainkey |
Generic SMTP |
em._domainkey |
Various (check CNAME target) |
TXT Records → Tool Identification
| TXT Pattern | Tool |
|---|---|
open.sleadtrack.com |
Smartlead (custom tracking domain) |
hubspot-developer-verification=* |
HubSpot |
anthropic-domain-verification-* |
Anthropic (Claude) |
MS=* |
Microsoft 365 |
google-site-verification=* |
Google Search Console |
slack-domain-verification=* |
Slack |
atlassian-domain-verification=* |
Atlassian (Jira/Confluence) |
docusign=* |
DocuSign |
facebook-domain-verification=* |
Facebook/Meta |
_github-pages-challenge-* |
GitHub Pages |
stripe-verification=* |
Stripe |
Website Source Patterns → Tool Identification
| Pattern in HTML | Tool |
|---|---|
assets.apollo.io/micro/website-tracker |
Apollo.io (visitor tracking) |
hs-script or js.hs-scripts.com |
HubSpot |
px.ads.linkedin.com |
LinkedIn Insight Tag |
connect.facebook.net or fbq( |
Facebook Pixel |
snap.licdn.com |
LinkedIn Insight Tag |
cdn.segment.com |
Segment |
cdn.mxpnl.com or mixpanel |
Mixpanel |
cdn.amplitude.com |
Amplitude |
app.posthog.com or posthog |
PostHog |
widget.intercom.io |
Intercom |
js.driftt.com |
Drift |
client.crisp.chat |
Crisp |
static.zdassets.com |
Zendesk |
s3-us-west-2.amazonaws.com + reb2b |
REB2B |
clearbit.com/tag.js or reveal |
Clearbit Reveal |
6sc.co or 6sense |
6sense |
tag.demandbase.com |
Demandbase |
d.adroll.com |
AdRoll |
googletagmanager.com |
Google Tag Manager |
gtag('config', 'G-*') |
Google Analytics 4 |
Cold Outbound Domain Patterns
A separate domain is being used for cold email if it has:
- Google Workspace MX (or similar) but no product/marketing email tools in SPF
- SPF that only includes
_spf.google.com(sending from raw mailboxes) - A 301/302 redirect to the company's primary domain
- No website content of its own
- Domain name follows patterns like:
[brand]reach.com,get[brand].com,try[brand].com,meet[brand].com,[brand]hq.com
DMARC Assessment Guide
| Policy | Meaning | Assessment |
|---|---|---|
p=reject |
Reject unauthenticated email | Strong — best practice |
p=quarantine |
Send to spam if unauthenticated | Good — enforcing |
p=none |
Monitor only, don't enforce | Weak — anyone can spoof the domain |
| No DMARC record | No policy at all | Missing — wide open to spoofing |
Troubleshooting
"No tools detected"
- The company may be very early-stage with minimal tooling
- Some tools (like Apollo used only for prospecting, not sending) leave no DNS trace
- LinkedIn Sales Navigator, Clay enrichment, and similar tools don't leave public signals
- Try the Apify profiler if you only ran free-only mode
"SPF has Google only but they use Smartlead/Instantly"
- This is normal. Smartlead and Instantly typically connect to Google Workspace mailboxes via SMTP and send through Google — so SPF passes via Google's include. The cold email tool itself doesn't need its own SPF entry.
- Look for Smartlead's
open.sleadtrack.comin TXT records or website source as confirmation.
"Apify profiler timed out"
- Some sites take longer to load. The profiler has a 3-minute timeout.
- Retry once. If it fails again, rely on DNS + source code analysis.
"artisan.ai resolves but redirects to Afternic"
- The domain is parked/for sale. Check common alternatives:
.co,.com,.io. - Wildcard DNS (all subdomains resolve to the same IP) is a sign of a parked domain.
Links
- Apify Technology Profiling Engine
- Apify API Token
- MXToolbox — manual verification
- Spamhaus Domain Lookup
| 1 | |
| 2 | name tech-stack-teardown |
| 3 | description > |
| 4 | Reverse-engineer a company's sales and marketing tech stack from public signals. |
| 5 | Detects CRMs, cold email tools, people databases, ad pixels, email delivery services, |
| 6 | and outbound sending domains via DNS records, website source inspection, Apify technology |
| 7 | profiling, blacklist checks, and public spam complaint searches. Works on single companies |
| 8 | or batches. Outputs a structured markdown report per company. |
| 9 | tags [competitive-intel] |
| 10 | |
| 11 | |
| 12 | # Tech Stack Recon |
| 13 | |
| 14 | Reverse-engineer a company's sales, marketing, and outbound infrastructure from public signals. No login, no API access to their tools needed — everything is derived from DNS records, website source code, technology profiling, blacklist databases, and public complaints. |
| 15 | |
| 16 | ## What It Detects |
| 17 | |
| 18 | | Category | Tools Detected | |
| 19 | |----------|---------------| |
| 20 | | **CRM** | HubSpot, Salesforce (via SPF, website pixels, DNS) | |
| 21 | | **Cold Email Tools** | Smartlead, Instantly, Outreach, Salesloft, Lemlist (via SPF, DKIM, TXT records, website source) | |
| 22 | | **People Databases** | Apollo, ZoomInfo, Clearbit, 6sense (via website tracker scripts) | |
| 23 | | **Email Delivery** | SendGrid, Amazon SES, Postmark, Mailgun, Mandrill (via SPF includes, DKIM selectors) | |
| 24 | | **Email Marketing** | Mailchimp, Brevo, ActiveCampaign, Klaviyo (via DKIM selectors) | |
| 25 | | **Ad Retargeting** | LinkedIn Insight Tag, Facebook Pixel, AdRoll, Reddit Ads, Twitter Ads (via Apify profiler + source) | |
| 26 | | **Website Builder** | Webflow, Framer, Next.js, WordPress (via Apify profiler + source) | |
| 27 | | **Chat / Support** | Intercom, Drift, Crisp, Zendesk (via website source) | |
| 28 | | **Analytics** | Google Analytics, Segment, Mixpanel, Amplitude, PostHog, Heap (via website source) | |
| 29 | | **Outbound Domains** | Separate cold sending domains (via SPF-only Google Workspace + redirect to primary) | |
| 30 | |
| 31 | ## How It Works |
| 32 | |
| 33 | The skill runs 5 layers of detection, each revealing different signals: |
| 34 | |
| 35 | ### Layer 1: DNS Records (Free, instant) |
| 36 | |
| 37 | |
| 38 | MX → Primary email provider (Google Workspace, Microsoft 365, etc.) |
| 39 | SPF → Every service authorized to send email on their behalf |
| 40 | DKIM → Cryptographic proof of which tools actually send email |
| 41 | DMARC → Email authentication policy (how strict they are) |
| 42 | TXT → Misc verifications (Smartlead tracking domains, tool verifications) |
| 43 | CNAME → Subdomains pointing to third-party services |
| 44 | |
| 45 | |
| 46 | This is the highest-signal layer. SPF and DKIM don't lie — if SendGrid is in their SPF, they use SendGrid. |
| 47 | |
| 48 | ### Layer 2: Website Source Inspection (Free, instant) |
| 49 | |
| 50 | Fetches the target website and searches HTML for: |
| 51 | Tracking pixels (Apollo, REB2B, HubSpot, Facebook, LinkedIn) |
| 52 | Script tags loading third-party tools |
| 53 | Meta tags and framework signatures |
| 54 | Hidden form handlers and API endpoints |
| 55 | |
| 56 | ### Layer 3: Apify Technology Profiler (Pay-per-use, ~$0.005/domain) |
| 57 | |
| 58 | Runs `justa/technology-profiling-engine` actor for deep detection of 7,000+ technologies using 8-tier inspection with confidence scores. Catches tools that don't appear in source code (loaded dynamically, via GTM, etc.). |
| 59 | |
| 60 | ### Layer 4: Blacklist Checks (Free, instant) |
| 61 | |
| 62 | Queries 6 major DNS-based blacklists: |
| 63 | Spamhaus (zen.spamhaus.org) |
| 64 | Barracuda (b.barracudacentral.org) |
| 65 | SpamCop (bl.spamcop.net) |
| 66 | SORBS (dnsbl.sorbs.net) |
| 67 | SURBL (multi.surbl.org) |
| 68 | URIBL (black.uribl.com) |
| 69 | |
| 70 | ### Layer 5: Public Complaint Search (Free) |
| 71 | |
| 72 | Web searches for spam complaints on Trustpilot, Reddit, SpamCop forums, and general web. Also searches for the company + tool names to find public mentions of their stack. |
| 73 | |
| 74 | ## Cost |
| 75 | |
| 76 | | Component | Cost | |
| 77 | |-----------|------| |
| 78 | | DNS queries | Free | |
| 79 | | Website source fetch | Free | |
| 80 | | Blacklist checks | Free | |
| 81 | | Web searches | Free | |
| 82 | | Apify Technology Profiler | ~$0.005 per domain | |
| 83 | |
| 84 | **Typical costs:** |
| 85 | | Scenario | Domains | Est. Cost | |
| 86 | |----------|---------|-----------| |
| 87 | | Single company | 1 | ~$0.005 | |
| 88 | | Small batch | 5 | ~$0.025 | |
| 89 | | Large batch | 20 | ~$0.10 | |
| 90 | |
| 91 | Skip the Apify profiler with `--no-apify` for free-only analysis (DNS + source + blacklists). |
| 92 | |
| 93 | ## Setup |
| 94 | |
| 95 | ### 1. Required |
| 96 | |
| 97 | |
| 98 | # dig (DNS lookups) — included on macOS/Linux |
| 99 | which dig |
| 100 | |
| 101 | # curl (website source fetch) — included on macOS/Linux |
| 102 | which curl |
| 103 | |
| 104 | # Python 3 with requests + dotenv |
| 105 | pip3 install requests python-dotenv |
| 106 | |
| 107 | |
| 108 | ### 2. Optional (for Apify Technology Profiler) |
| 109 | |
| 110 | |
| 111 | # Get your token at https://console.apify.com/account/integrations |
| 112 | # Add to .env: |
| 113 | APIFY_API_TOKEN=apify_api_YOUR_TOKEN_HERE |
| 114 | |
| 115 | |
| 116 | ## Usage |
| 117 | |
| 118 | ### Single Company |
| 119 | |
| 120 | |
| 121 | python3 scripts/recon.py --domains pump.co |
| 122 | |
| 123 | |
| 124 | ### Batch of Companies |
| 125 | |
| 126 | |
| 127 | python3 scripts/recon.py --domains "dili.ai,pump.co,runautomat.com" |
| 128 | |
| 129 | |
| 130 | ### Free-Only Mode (No Apify) |
| 131 | |
| 132 | |
| 133 | python3 scripts/recon.py --domains pump.co --no-apify |
| 134 | |
| 135 | |
| 136 | ### Output to File |
| 137 | |
| 138 | |
| 139 | python3 scripts/recon.py --domains "dili.ai,pump.co" --output /path/to/report.md |
| 140 | |
| 141 | |
| 142 | ### JSON Output |
| 143 | |
| 144 | |
| 145 | python3 scripts/recon.py --domains pump.co --json |
| 146 | |
| 147 | |
| 148 | ## What the Script Does |
| 149 | |
| 150 | For each domain: |
| 151 | |
| 152 | **DNS Scan** — Queries MX, SPF, DKIM (18 common selectors), DMARC, TXT records, and 30+ common subdomains (email, tracking, click, bounce, send, smtp, mail, etc.) |
| 153 | **Website Source Scan** — Fetches the homepage HTML and greps for 40+ known tool signatures (script URLs, pixel IDs, tracking domains) |
| 154 | **Apify Technology Profile** (optional) — Runs deep 8-tier technology detection for 7,000+ technologies with confidence scores |
| 155 | **Blacklist Check** — Queries 6 DNS-based blacklists for the domain |
| 156 | **Outbound Domain Detection** — Checks if common variations of the domain exist (get[name].com, try[name].com, [name]reach.com, etc.) and analyzes their DNS for cold outbound patterns |
| 157 | **Report Generation** — Produces a structured markdown report with confirmed tools, evidence, email auth assessment, blacklist status, and an overall assessment |
| 158 | |
| 159 | ## Agent Integration |
| 160 | |
| 161 | When using this skill as an agent, follow this flow: |
| 162 | |
| 163 | User provides one or more company domains |
| 164 | Run `recon.py` for all domains (confirm Apify cost if > 5 domains) |
| 165 | Present the report — group findings by: |
| 166 | **Confirmed tools** (with evidence) |
| 167 | **Email authentication** (SPF/DKIM/DMARC assessment) |
| 168 | **Deliverability** (blacklist status + spam complaints) |
| 169 | **Notable signals** (outbound domains, missing DMARC, SPF gaps) |
| 170 | If batch, include a comparative summary table at the end |
| 171 | |
| 172 | ### Agent Without the Script |
| 173 | |
| 174 | The agent can perform all checks manually using built-in tools: |
| 175 | |
| 176 | **DNS checks** — Use `Bash` tool: |
| 177 | |
| 178 | dig +short MX example.com |
| 179 | dig +short TXT example.com |
| 180 | dig +short TXT _dmarc.example.com |
| 181 | dig +short TXT selector._domainkey.example.com |
| 182 | dig +short CNAME subdomain.example.com |
| 183 | |
| 184 | |
| 185 | **Website source scan** — Use `Bash` tool: |
| 186 | |
| 187 | curl -sL https://www.example.com | grep -oi 'pattern1\|pattern2\|pattern3' | sort -u |
| 188 | |
| 189 | |
| 190 | **Blacklist checks** — Use `Bash` tool: |
| 191 | |
| 192 | dig +short example.com.zen.spamhaus.org A |
| 193 | |
| 194 | |
| 195 | **Apify profiler** — Use `Bash` tool with Python: |
| 196 | |
| 197 | # See scripts/recon.py for the full implementation |
| 198 | |
| 199 | |
| 200 | **Spam complaints** — Use `WebSearch` tool: |
| 201 | |
| 202 | "example.com" spam OR unsolicited OR "cold email" OR blacklist |
| 203 | |
| 204 | |
| 205 | ## DNS Record Cheat Sheet |
| 206 | |
| 207 | ### SPF Includes → Tool Identification |
| 208 | |
| 209 | | SPF Include | Tool | |
| 210 | |-------------|------| |
| 211 | | `_spf.google.com` | Google Workspace | |
| 212 | | `spf.protection.outlook.com` | Microsoft 365 | |
| 213 | | `sendgrid.net` | SendGrid | |
| 214 | | `amazonses.com` | Amazon SES | |
| 215 | | `*.hubspotemail.net` | HubSpot | |
| 216 | | `*.rsgsv.net` or `servers.mcsv.net` | Mailchimp/Mandrill | |
| 217 | | `spf.mandrillapp.com` | Mandrill (Mailchimp transactional) | |
| 218 | | `mail.zendesk.com` | Zendesk | |
| 219 | | `*.freshdesk.com` | Freshdesk | |
| 220 | | `spf.mailjet.com` | Mailjet | |
| 221 | | `spf.brevo.com` | Brevo (Sendinblue) | |
| 222 | | `_spf.salesforce.com` | Salesforce | |
| 223 | | `mktomail.com` | Marketo | |
| 224 | | `postmarkapp.com` | Postmark | |
| 225 | | `mailgun.org` | Mailgun | |
| 226 | |
| 227 | ### DKIM Selectors → Tool Identification |
| 228 | |
| 229 | | Selector Pattern | Tool | |
| 230 | |-----------------|------| |
| 231 | | `google._domainkey` | Google Workspace | |
| 232 | | `selector1._domainkey` / `selector2._domainkey` | Microsoft 365 | |
| 233 | | `s1._domainkey` / `s2._domainkey` → `*.sendgrid.net` | SendGrid | |
| 234 | | `k1._domainkey` → `*.mcsv.net` or `dkim.mcsv.net` | Mailchimp | |
| 235 | | `k2._domainkey` / `k3._domainkey` → `dkim2.mcsv.net` / `dkim3.mcsv.net` | Mailchimp | |
| 236 | | `mandrill._domainkey` | Mandrill | |
| 237 | | `pm._domainkey` | Postmark | |
| 238 | | `smtp._domainkey` | Generic SMTP | |
| 239 | | `em._domainkey` | Various (check CNAME target) | |
| 240 | |
| 241 | ### TXT Records → Tool Identification |
| 242 | |
| 243 | | TXT Pattern | Tool | |
| 244 | |-------------|------| |
| 245 | | `open.sleadtrack.com` | **Smartlead** (custom tracking domain) | |
| 246 | | `hubspot-developer-verification=*` | HubSpot | |
| 247 | | `anthropic-domain-verification-*` | Anthropic (Claude) | |
| 248 | | `MS=*` | Microsoft 365 | |
| 249 | | `google-site-verification=*` | Google Search Console | |
| 250 | | `slack-domain-verification=*` | Slack | |
| 251 | | `atlassian-domain-verification=*` | Atlassian (Jira/Confluence) | |
| 252 | | `docusign=*` | DocuSign | |
| 253 | | `facebook-domain-verification=*` | Facebook/Meta | |
| 254 | | `_github-pages-challenge-*` | GitHub Pages | |
| 255 | | `stripe-verification=*` | Stripe | |
| 256 | |
| 257 | ### Website Source Patterns → Tool Identification |
| 258 | |
| 259 | | Pattern in HTML | Tool | |
| 260 | |----------------|------| |
| 261 | | `assets.apollo.io/micro/website-tracker` | Apollo.io (visitor tracking) | |
| 262 | | `hs-script` or `js.hs-scripts.com` | HubSpot | |
| 263 | | `px.ads.linkedin.com` | LinkedIn Insight Tag | |
| 264 | | `connect.facebook.net` or `fbq(` | Facebook Pixel | |
| 265 | | `snap.licdn.com` | LinkedIn Insight Tag | |
| 266 | | `cdn.segment.com` | Segment | |
| 267 | | `cdn.mxpnl.com` or `mixpanel` | Mixpanel | |
| 268 | | `cdn.amplitude.com` | Amplitude | |
| 269 | | `app.posthog.com` or `posthog` | PostHog | |
| 270 | | `widget.intercom.io` | Intercom | |
| 271 | | `js.driftt.com` | Drift | |
| 272 | | `client.crisp.chat` | Crisp | |
| 273 | | `static.zdassets.com` | Zendesk | |
| 274 | | `s3-us-west-2.amazonaws.com` + `reb2b` | REB2B | |
| 275 | | `clearbit.com/tag.js` or `reveal` | Clearbit Reveal | |
| 276 | | `6sc.co` or `6sense` | 6sense | |
| 277 | | `tag.demandbase.com` | Demandbase | |
| 278 | | `d.adroll.com` | AdRoll | |
| 279 | | `googletagmanager.com` | Google Tag Manager | |
| 280 | | `gtag('config', 'G-*')` | Google Analytics 4 | |
| 281 | |
| 282 | ### Cold Outbound Domain Patterns |
| 283 | |
| 284 | A separate domain is being used for cold email if it has: |
| 285 | Google Workspace MX (or similar) but **no product/marketing email tools** in SPF |
| 286 | SPF that only includes `_spf.google.com` (sending from raw mailboxes) |
| 287 | A 301/302 redirect to the company's primary domain |
| 288 | No website content of its own |
| 289 | Domain name follows patterns like: `[brand]reach.com`, `get[brand].com`, `try[brand].com`, `meet[brand].com`, `[brand]hq.com` |
| 290 | |
| 291 | ## DMARC Assessment Guide |
| 292 | |
| 293 | | Policy | Meaning | Assessment | |
| 294 | |--------|---------|------------| |
| 295 | | `p=reject` | Reject unauthenticated email | Strong — best practice | |
| 296 | | `p=quarantine` | Send to spam if unauthenticated | Good — enforcing | |
| 297 | | `p=none` | Monitor only, don't enforce | Weak — anyone can spoof the domain | |
| 298 | | No DMARC record | No policy at all | **Missing** — wide open to spoofing | |
| 299 | |
| 300 | ## Troubleshooting |
| 301 | |
| 302 | ### "No tools detected" |
| 303 | The company may be very early-stage with minimal tooling |
| 304 | Some tools (like Apollo used only for prospecting, not sending) leave no DNS trace |
| 305 | LinkedIn Sales Navigator, Clay enrichment, and similar tools don't leave public signals |
| 306 | Try the Apify profiler if you only ran free-only mode |
| 307 | |
| 308 | ### "SPF has Google only but they use Smartlead/Instantly" |
| 309 | This is normal. Smartlead and Instantly typically connect to Google Workspace mailboxes via SMTP and send **through** Google — so SPF passes via Google's include. The cold email tool itself doesn't need its own SPF entry. |
| 310 | Look for Smartlead's `open.sleadtrack.com` in TXT records or website source as confirmation. |
| 311 | |
| 312 | ### "Apify profiler timed out" |
| 313 | Some sites take longer to load. The profiler has a 3-minute timeout. |
| 314 | Retry once. If it fails again, rely on DNS + source code analysis. |
| 315 | |
| 316 | ### "artisan.ai resolves but redirects to Afternic" |
| 317 | The domain is parked/for sale. Check common alternatives: `.co`, `.com`, `.io`. |
| 318 | Wildcard DNS (all subdomains resolve to the same IP) is a sign of a parked domain. |
| 319 | |
| 320 | ## Links |
| 321 | |
| 322 | [Apify Technology Profiling Engine] |
| 323 | [Apify API Token] |
| 324 | [MXToolbox] — manual verification |
| 325 | [Spamhaus Domain Lookup] |
| 326 |
Details
- Updated
- Sep 21, 2026
- License
- MIT
- Stars on the repo
- ★ 1,220
- Checked
- Source
- gooseworks-ai/goose-skills ↗
- Creator
- gooseworks-ai · 206 listings
Made with tech-stack-teardown

Similar skills
See all →
SkillReverse engineer native, managed, Electron/JavaScriptREA
SkillBrainstorms ideas into designs before any creative workBrainstorming Ideas Into Designs
SkillRequires technical rigor and verificationCode Review Reception
SkillDiagnosis loop for hard bugs and performance regressionsDiagnosing bugs
SkillImplement the result of /to-spec and /to-tickets in codeImplement spec
SkillWriting a PR bodyMore from gooseworks-ai
SkillMine the highest-converting ad angles from customer reviewsAd angle miner
SkillAnalyze ad campaign performance data to identify what'sAd campaign analyzer
SkillFor paid lead-gen and participant-recruitment adsAd lead quality analyzer
SkillAnalyze the message match between your ads and landing pagesAd to landing page auditor
SkillCheck and improve your brand's visibility across AI searchAeo
SkillSearch Amazon products - find items, compare pricesAmazon Product Search