Skyglow Drones • B2B Entertainment
B2B Outbound System for a Drone Light Show Company
Cold Email Infrastructure, CRM Setup, Lead List Building, SEO, RFP Bid Writing, LinkedIn Optimization, Landing Page
They Had Proof. They Had No Pipeline.
Skyglow Drones is a drone light show company based in Branson, Missouri. They hold an FAA 107.35 multi-aircraft waiver and FAA Exemption 23218 for pyrotechnic integration — only the second company in the US to hold that second one. They had 22 custom shows locked with Silver Dollar City, the Midwest’s most popular theme park. That’s roughly $440K in locked revenue before a single outbound email was sent.
What they didn’t have: any way to find the next client.
No CRM. No cold email setup. No lead tracking. No way to reach a festival director or a city parks coordinator at scale. Michael, the founder, closes his own deals. His job was to get on calls and close them. My job was to build the machine that put qualified buyers on his calendar.
The buyers here aren’t shopping for drone shows. City managers, festival talent buyers, casino entertainment directors — nobody wakes up thinking “I should get a drone show.” You have to find them, make the case cold, and move fast enough that the conversation doesn’t die before it starts.
Before Anything Could Move, the House Was on Fire
Three days after I started building the email infrastructure, the website developer was fired.
Brad Jones had built the Skyglow site using AI tools and never QA’d it. The robots.txt file pointed to the wrong domain (skyglowdrones.net, not .com). The site was built on Nuxt.js with client-side rendering — Google’s crawler was seeing an empty HTML shell. Only 1 page was indexed. DKIM had never been configured, so every email going out of skyglowdrones.com was cryptographically unsigned for the entire warmup period and into the first weeks of the campaign. I found this by accident in February when I ran an Instantly deliverability test and got a 70/100 with DKIM FAIL.
The DKIM story is embarrassing in the best way. I had emailed Brad the CNAME records in January. He acknowledged them. Then he was fired before he added them. By the time I tracked down that those records were still missing, campaigns were already running. Open rates looked decent, so nothing obviously broke, but deliverability was compromised the whole time. I found the DKIM selector values buried in the M365 Security Center, added both to Squarespace DNS (not GoDaddy — the original documentation was wrong on this), enabled the signing toggle in Defender. Score jumped from 70 to 82. Quietly fixed.
The site itself didn’t need a full rebuild, which was the good news. Six parallel research agents on the SEO problem surfaced that SSR was actually working — the issues were configuration-level. Nick, the brand designer on Skyglow’s team, had already started a WordPress migration, so we let that proceed and I took on the technical SEO work: H1 restructuring across four pages, meta descriptions, robots.txt fix, alt text on 31 media library images plus 49 more fixed individually via REST API (because media library alt text does not propagate to block-level markup in WordPress — you have to fix them separately). FAQPage schema, Service schema, LocalBusiness schema across five state pages, BreadcrumbList site-wide via Rank Math. The site went from 1 indexed page to 12 in about a week.
Also: the phone number in the structured data was wrong, and the business name in schema was “SkyGlow Drones” not “SkyGlow Drone Productions.” Small things. Worth fixing before any of the SEO work matters.
Building the Infrastructure Nobody Sees
Cold email deliverability is mostly invisible until something breaks. The infrastructure underneath it is tedious to build correctly and expensive to rebuild if you skip steps.
Here’s what I set up before the first campaign launched:
The warmup protocol started with marketing@skyglowdrones.com and anthony@skyglowdrones.com connected to Instantly at 10 emails per day, increasing by 1 per day, with a 30% reply rate target. That ran for roughly five weeks. Warmup emails don’t count against your campaign send limit, but the ramp is non-negotiable — you can’t rush it without damaging domain reputation you won’t get back.
The sending architecture: Instantly handles all cold outreach. GHL’s dedicated domain (mg.skyglowdrones.com, set up as a subdomain specifically to preserve the root domain’s MX records for M365) handles automated and warm emails. Microsoft 365 handles the actual inboxes. That separation matters. Root domain for cold sending is a deliverability mistake.
The scaling problem became obvious by early March. One account at 30 sends per day means 28 days just to complete Step 1 for 850 festival leads. Volume doesn’t scale vertically — you can’t just send more per account without tanking reputation. It scales horizontally. I bought five cold email domains on Cloudflare (bookskyglow.com, bookskyglowdrones.com, skyglowdroneshow.com, skyglowdroneshows.com, skyglowshows.com — approximately $9.15 each per year), set up 10 mailboxes through Zapmail at $2.50/mailbox/month, chose Google Workspace underneath specifically because Microsoft was deprecating basic SMTP auth in April 2026. All 10 accounts connected to Instantly, warmed up over three weeks, then added to campaigns.
I paid for this infrastructure myself for the first month or two. The plan was to show results first and bring Michael into the cost conversation after. That’s a call I’d make again.
Total capacity after the scale-up: 12 accounts (10 Zapmail plus the two M365 inboxes) at 30 emails per day each. 360 emails per day.
Three Segments, Three Different Buying Logics
Municipal government, festivals and special events, casinos. Each one required its own list, its own message, and its own proof point structure.
Municipal
The buyers are city managers, parks and rec directors, special events coordinators, tourism directors. I filtered Apollo by 6 job titles across Missouri and Arkansas to start, exported 220 leads, ran them through ZeroBounce. Municipal email infrastructure runs heavy on catch-all addresses (common with government Exchange setups), so I kept the catch-all results rather than discarding them. Final list: 105 verified leads after removing an obvious batch of misfits — a funeral home, a children’s cancer charity, a sexual assault organization. List hygiene matters before you automate anything.
I also dropped the org_ref variable from the merge fields after an early draft used city names as the personalization hook. “Quick question about Belton” doesn’t work. A city name alone is not a reason to read an email.
Festivals
This became the largest segment by volume and the most productive by pipeline. The key research finding: the people who book entertainment at festivals call themselves “talent buyers” and “entertainment buyers.” Those are insider terms. They don’t appear in obvious job title searches. Finding them required knowing what they call themselves, then filtering Apollo on those exact strings.
Batch 1 covered Illinois, Missouri, Oklahoma, Kansas, Arkansas. Then Batch 2 added Texas, Tennessee, Iowa, Indiana, Wisconsin. Batch 3 added Florida, Ohio, Georgia. Batch 4 added nine Northeast and Pacific Northwest states. By May 2026, the festivals campaign had 4,400+ leads across multiple campaigns.
The SDC proof reference evolved as we expanded. “Silver Dollar City books us for 22 shows a year” works in the Midwest. Nobody in New York or Washington knows what Silver Dollar City is. For Batches 3 and 4, that became “the Midwest’s most popular theme park books us for 22 shows a year.” Same proof, readable everywhere.
Casinos
Buyers: general managers, entertainment directors, special events managers. 138 leads across nine states. Higher open rates than either of the other two segments, but zero conversions. The reason: when I built the casino campaign, I left the step delays at Instantly’s default of 1 day between each email. That meant 77 of 109 leads completed the entire 5-email sequence in about four days. The list burned too fast with no breathing room. The correct delays were 2/3/7/6 days. I fixed it, but the damage was done on that batch.
The Sequences
Five emails per segment, 20-30 words per email is too short, 150 words is too long. I landed between 66 and 98 words per email on the final versions. Subject lines under 40 characters. Cadence: Day 1, 4, 8, 14, 21.
The deliverability protection strategy: Emails 1 and 5 are reply-only, no links. Landing page links appear in Emails 2 through 4. This protects early send reputation — links in the first email are a spam signal, and adding no links to the final email reduces the “last-ditch pitch” read that kills reply rates.
Each segment’s Email 4 pushed a different angle. Festivals: customization and sponsorship activation (“this works as a sponsorship asset, not just a line item”). Municipal: social proof and media pickup. Casinos: “Most properties treat it as a marketing spend, not just an entertainment line item.”
I went through four copy iterations total. v1 was functional. v3 was a casual rewrite that removed phrases like “What most people don’t realize” — that framing signals a pitch, not a conversation. v4 added customization emphasis, hardcoded the SDC proof reference rather than using a variable (simpler and harder to misconfigure), and rewrote the Email 2 CTA.
All 30 variants (5 steps times 2 A/B versions times 3 segments) were pushed to Instantly through an automated update process via Playwright. Updating sequences at that scale manually would have taken hours per round.
What the Numbers Looked Like
Industry benchmark for B2B cold email: 15-25% average open rate, 4% reply rate.
By March 13, two to three weeks into the campaigns:
- Municipal: 105 sequences started, 381 emails sent, 57% open rate, 6 replies, 1 opportunity
- Festivals: 208 sequences started, 321 emails sent, 62% open rate, 11 replies, 3 opportunities
By March 23:
- Municipal: 58.1% open rate, 445 sent
- Festivals: 56.47% open rate, 453 sent, $13K in pipeline, only 3% of leads had completed the full sequence (meaning most of the pipeline was still ahead)
- Casinos: 64.22% open rate, 450 sent (hurt by the step delay misconfiguration noted above)
Festivals Batch 1 final summary: 810 leads sequenced, 56.79% open rate, 22 replies, 5 opportunities, $23K in pipeline.
By May 2026, full picture: 3,944 total leads contacted, 157 total replies, 18 interested. Overall reply rate: 4%, matching industry benchmark. The open rates were running 3x above average the whole time.
One thing I should name: roughly 80% of the replies that came in were out-of-office messages, maternity leave notices, or “this person is no longer at this company” auto-responses. That’s an Apollo data staleness problem. The data export is only as current as Apollo’s last crawl. It’s not a copy problem, but it does mean a meaningful portion of any list you pull is dead before you send a word.
The Pricing Mistake We Caught
By late March, four leads had expressed genuine interest. All four asked for pricing. All four got pushed toward a call instead of getting a number. All four went silent within 8 to 11 days.
When I found the pricing PDF in Michael’s downloads and confirmed the tiers (100 drones/$10K, 150/$15K, 200/$20K), the fix was immediate: when a lead asks for pricing, send the PDF. Lead with the $10K entry point. Don’t deflect to a discovery call when someone is asking a direct question.
This is the kind of thing that doesn’t show up in open rates or reply rates. The leads were warm. The process killed them.
Festivals Batch 4 and the ESG Problem
The Northeast and Pacific Northwest batches introduced a new problem: enterprise email security gateways.
After about 200 sends, Instantly auto-paused the campaign with a 12.5% bounce rate. Investigation: 74% of the bounces were 5.7.0 policy blocks, not invalid addresses. Mimecast and Proofpoint deployments are more concentrated in NE and PNW enterprise organizations than in the Midwest. ZeroBounce and NeverBounce validate addresses — they cannot detect ESG policy blocks. A verified email can still bounce if the receiving organization’s gateway is set to reject messages from unknown sending domains.
I deleted 44 leads across 7 blocked domains and resumed the campaign. New standing rule: filter against a bounce domain blocklist before uploading any list to Instantly.
The Midwest campaigns didn’t surface this problem because Midwest regional organizations (festival directors, parks and rec departments, smaller venues) don’t run Mimecast at the same rate that large East Coast event agencies and corporate entities do. Same tool, different environment.
RFPs: A Different Kind of Outbound
By April, Michael was getting on calls from the festival campaigns. Tina from the Diplomat Hotel. Sean from Butler Golf Course in Austin. Real leads.
In parallel, I started identifying and responding to drone show RFPs. This is a different kind of work: government procurement is formal, the documents are dense, and the scoring rubrics reward thoroughness over creativity.
Draper City, Utah (RFP 26-12)
First RFP. I built 7 submission documents including a full show concept built around three overlapping anniversaries: America’s 250th on July 4, Draper Days July 17, Utah Pioneer Day July 24. Bid at $42-48K based on competitive intel from a similar Chesterfield, MO solicitation (Firefly bid $45K, Sky Elements $42.75K, Glyphix $41K without pyro). Submitted via Bonfire, 32 minutes before the 2:00 PM deadline.
The city came back interested, asked for cost reduction options. We offered two paths. Then the city postponed. Then they re-issued as RFP 26-16 with a fundamentally restructured scoring system: $20K hard cap, cost now pass/fail only, and a new Sponsorship category worth 30% of the total score. That’s a complete strategy shift. The company that wins isn’t the cheapest — it’s the one with the best sponsorship activation concept.
I rebuilt the entire proposal package for 26-16: 11 documents, 5,479+ words in the technical proposal alone, three sets of pricing attachments, a capability deck, everything converted to PDF via pandoc and xelatex. Three parallel subagent audit sweeps before submission. Submitted and awaiting decision as of late May.
Virginia Beach (COVB-26-101653)
Complete proposal built. 16 documents, show concept written (“Where America Began” — Cape Henry 1607 as the origin of the America 250 story). Bid at $80K, based on competitive interpolation. Deadline missed. The proposal is complete and reusable for future large-scale RFPs.
Port of Los Angeles
No-bid. Section 4.9 of the contract permanently transferred ownership of all show deliverables — choreography, designs, renders — to the Port. Section 4.8 allowed 10-day no-cause termination with no kill fee. Flagged the contract terms for Michael, his call was fast: no.
Reading an RFP for contract risk is as important as writing the proposal. One bad term in Section 4 can make a win worse than a loss.
Where It Stands
This is an ongoing engagement. As of late May 2026:
- 4 cold email campaigns active (2 festivals batches running, municipal paused pending resume, casinos paused for retool)
- 3,944 leads contacted total, 18 interested, 4 appointment-level conversations confirmed
- Draper City 26-16 submitted, awaiting award decision
- Virginia Beach proposal complete and ready for the next comparable RFP
- 17+ interested festivals leads have not had calls yet — that pipeline is ahead, not behind
- LinkedIn outreach is built and ready but never launched (the profile is live; the sequences haven’t fired)
- University events is an identified segment that hasn’t been built yet
The open rates have held above 54% across all segments and campaigns. The system is working. The constraint now is sales capacity — Michael can only take so many calls, and the pipeline is growing faster than the close rate can absorb.
That’s a better problem than having no pipeline.