Casino.online
Sole owner of a regulated, multi-market email program built from zero on Customer.io: proof I can architect compliance-heavy systems, not just run campaigns inside someone else's setup.
Overview
Client: Casino.online
Industry: iGaming / Affiliate Publishing
Role: Email Marketing Manager - sole owner of strategy, architecture, platform build, and execution
Platform: Customer.io
Duration: 6 months
Markets: UK, CA, US, DACH, ES, IT, ROW
Building a compliant, multi-market email program from zero - architecture first, campaigns second.
My Role
I was brought in as the email marketing manager for Casino.online, an independent iGaming affiliate platform publishing real-money-tested casino reviews, bonus comparisons, and strategy guides across multiple regulated markets. I owned this project end to end: there was no team, no prior infrastructure, and no existing subscriber base. Every decision - from platform architecture and compliance frameworks to campaign logic, copywriting, and deliverability management - was mine.
This case study documents what I built, the thinking behind each decision, and the results after six months of operation.
> I treat email programs as products, not campaigns. The architecture has to be right before the first send - because reworking it at scale is far more expensive than getting it right at the start.
The Brief
About Casino.online
Casino.online is a multi-market iGaming affiliate property operating localized subdomains for the UK, Germany, Austria, Spain, Italy, Canada, the US, and a broader ROW audience. The platform's editorial differentiator is real-money testing: every casino reviewed has been tested with actual deposits. Content pillars are new casino alerts, bonus comparisons, strategy guides, and leaderboard rankings.
What I inherited
A blank canvas. No email list, no platform configured, no subscriber acquisition flow, no compliance documentation, and no campaign history. The brief was straightforward: build an email marketing program from zero that could operate across eight simultaneous markets, respect each market's regulatory requirements, and grow an engaged subscriber base organically.
The constraint that shaped everything: full regulatory compliance across all active markets from day one - not retrofitted later. This included GDPR, CAN-SPAM, and market-specific iGaming regulations in Germany, Spain, Italy, Canada, and the US.
My Approach
I structured the build in three sequential phases. Each had to be complete before the next could function correctly. Skipping ahead would have meant rework.
Phase 1: Architecture and compliance before anything else
Before selecting templates or writing subject lines, I designed the data model and the platform structure. This meant deciding how subscriber records would be structured, what compliance attributes every record needed to carry, how markets would be routed, and what naming conventions would govern every email, segment, and attribute in the system.
I chose Customer.io for its Liquid templating engine, which allowed me to handle multi-language output within single campaigns rather than maintaining parallel campaign structures per language. It also gave me the attribute-based segmentation model I needed for market-level routing.
The compliance data model I implemented captures five attributes for every subscriber:
- country - set by the backend at sign-up. The routing truth for all campaign branching.
- consent_text - the exact checkbox label shown to the subscriber at registration.
- consent_date - date of the policy version the subscriber agreed to.
- registration_proof - confirms the subscriber initiated the sign-up themselves.
- ip_address - captured at sign-up for audit and dispute purposes.
This data model means Casino.online can demonstrate lawful basis for processing in any market without relying solely on the email platform's native records - which was important given the platform operates in some of the most scrutinized regulatory environments in iGaming.
Phase 2: The subscriber routing engine
The most technically complex element of the build was the subscriber routing campaign. A single campaign handles every new subscriber across all markets, branching on country to deliver the correct opt-in experience.
I designed a mixed DOI/SOI model after reviewing the regulatory requirements per market. Double opt-in is required in Austria, Germany, Switzerland, Italy, Spain, Canada, the US, and parts of Asia. All other markets use single opt-in. Both paths collect identical compliance data - the difference is only the verification step.
What I built into the routing logic beyond the basics:
- Duplicate subscription protection - a verified subscriber who re-submits a form gets a single 'already subscribed' notification rather than restarting the verification flow.
- Re-subscription reminder - a DOI subscriber who is unverified and re-submits gets a reminder pointing to their original confirmation link, not a new one.
- 15-day suppression window - DOI subscribers who fail to confirm within 15 days are automatically moved to SUPPRESSED status and excluded from all future sends.
- Re-engagement testing - suppressed users are reviewed every 6 months with an optional commercial re-engagement email before permanent deletion.
These decisions protect the subscriber experience and list quality simultaneously. A subscriber who misses a confirmation email is not simply lost - they have a structured path back. A subscriber who never confirms does not quietly accumulate as dead weight on the list.
Phase 3: Welcome sequence and newsletter cadence
Once subscribers are verified, they enter a 4-email welcome sequence designed to introduce Casino.online's value proposition before transitioning them into the regular newsletter cadence.
- Email 1 - platform introduction: what Casino.online is, how to navigate reviews and comparisons.
- Email 2 - bonus overview: how the platform evaluates offers, with current highlights.
- Email 3 - social proof: Trustpilot reviews, real-money testing methodology, editorial independence.
- Email 4 - author introductions: connecting subscribers with the editorial team behind the content.
I built frequency preference selection into the sign-up flow (every 3 days, weekly, fortnightly, or monthly), with weekly as the default. Send timing uses a 20-40 hour randomization window rather than fixed intervals. This protects domain reputation by distributing sends naturally and creates a more human-feeling cadence for the subscriber.
After the welcome sequence, subscribers are routed into the quarterly newsletter program based on demonstrated interest signals: which links they clicked, which topics they selected at sign-up, and which authors they engaged with. Intent-based routing from the first newsletter send.
Execution Detail
Multi-language campaign logic
Rather than maintaining parallel campaign structures per language - which would have created an unmaintainable system as markets expanded - I used Liquid conditional logic within single campaigns to branch on language. A subscriber in Germany and a subscriber in Austria receive the same campaign flow but different email content.
I kept geo segments and language segments separate because they do not always align. German-speaking subscribers in Switzerland face different regulatory requirements than those in Germany, even though both receive German-language content. This distinction matters for compliance footers, responsible gambling messaging, and offer eligibility.
Component-driven design system
I built all emails using Customer.io's component system so that global updates - a footer link change, a new social icon, an updated casino table - propagate to all emails at once rather than requiring manual edits across every template.
- Footers (3 types) - transactional (no unsubscribe), DOI pre-confirmation (policy links only), standard subscriber (full preference management). Each is one component - a change propagates everywhere.
- Headers (EN/DE/ES) - language-specific header variants. All other languages inherit the default Casino.online header.
- Top 10 casino tables - updated at each send period from the live site, reused across multiple emails. One update, consistent output everywhere.
- CTA buttons - separated by traffic source (form vs. page) for clean A/B testing without conflating acquisition channels.
- Author profiles - author photo linked to their editorial profile on site. Designed to support future author-based subscriber segmentation.
Transactional email suite
In parallel with the newsletter program, I built and deployed a transactional email suite for Casino.online's user profile functionality. I designed the naming convention, created each template, and handed trigger IDs to the development team for integration.
- signup_magic_link_[lang] - magic link for new user profile creation.
- login_magic_link_[lang] - magic link for returning users; 15-minute expiry, single-use token.
- confirm_review_[lang] - review submission confirmation and moderation expectation-setting.
- confirm_comment_[lang] - blog and page comment confirmation.
- action_register_[lang] - account registration confirmation.
Deliverability as an ongoing discipline
I treated list hygiene as a continuous operational task, not a quarterly cleanup. Key practices I maintained:
- Bounce monitoring via the Deliveries and Drafts tab, with bounced addresses removed promptly to protect sender domain reputation.
- Regular deletion of fake database entries created by the content team during review testing - left unmanaged, these entries consume plan limits and drag down domain metrics.
- Proactive internal email exclusion - team member addresses identified and added to an exclusion segment to prevent skewing engagement data.
- Structured suppressed user reviews every 6 months, with a re-engagement test before permanent deletion.
A/B testing framework
I built active A/B tests into the welcome sequence from launch, focused on subject lines (open rate signal) and CTA button copy (click rate signal). My decision protocol: minimum 100 sends per variant and a 3-month minimum before drawing conclusions. When variants split - one winning on opens, the other on clicks - I combine the winning elements and immediately start the next test. Continuous improvement, not one-and-done.
Results
- 850+ verified subscribers - organic only, 6 months (industry benchmark for cold-start: meaningful in a regulated vertical).
- 30% open rate - within industry benchmark of 25-35%.
- 3.1% click rate - within industry benchmark of 2-4%.
- 10.3% CTOR - within benchmark of 10-15%.
List growth
Growing from zero to 850+ verified subscribers in six months through organic acquisition alone is meaningful in a regulated vertical. iGaming email programs face a structural headwind: the DOI requirement in key markets means a percentage of sign-ups never convert to verified subscribers. The 850+ figure represents subscribers who actively confirmed their subscription or completed a compliant SOI sign-up - a clean, engaged list rather than an inflated raw count.
Engagement
A 30% open rate, 3.1% click rate, and 10.3% CTOR track within industry benchmarks for a cold-start program. In a new sender - no list history, no established domain reputation, all subscribers acquired within the same 6-month window - hitting benchmarks rather than falling below them is the operational target. The fact that CTOR sits at 10.3% against a 10-15% benchmark indicates the content-to-audience match is working: the people opening the emails are clicking, not just passively receiving.
On open rates and Apple MPP: reported open rates across the industry are inflated by Apple Mail Privacy Protection, which auto-marks emails as opened for around 46% of recipients. The 30% figure should be read in that context. Click rate and CTOR are the more reliable engagement signals, and both are on benchmark.
Compliance
Zero compliance incidents across eight markets throughout the engagement, including Germany, Spain, and Italy - three of the most restrictive regulatory environments in iGaming. Every subscriber record carries the full compliance attribute set. The architecture was designed to be auditable from day one, not documented after the fact.
What I Learned
Three things from this engagement that I carry into every project:
Naming conventions are infrastructure
The email ID format, segment naming taxonomy, and attribute key standards I set at the start of this project made everything that followed easier to build, easier to audit, and easier to hand over. In programs that skip this step, technical debt accumulates fast - especially across multiple markets, languages, and product lines sharing the same platform. I now treat naming conventions as a first-week deliverable on every new engagement, not an afterthought.
Manual segments need data-driven counterparts
Customer.io's manual segments do not automatically exclude unsubscribers. This is a platform-specific behavior that caused issues early in the build - I was writing subscribers into manual segments via campaign logic, but those segments would retain people who later unsubscribed. The fix was straightforward: pair every manual segment with a data-driven counterpart that filters out unsubscribers, and use the data-driven version as the campaign trigger. But it's the kind of thing that can silently send emails to people who opted out if you don't know to look for it.
Compliance is easier to build in than to retrofit
The compliance data model - consent text, consent date, country, IP, registration proof - added complexity to the initial build. But it meant that when regulatory questions came up mid-engagement, the answer was already in the subscriber record. Retrofitting compliance attributes onto an existing list is significantly harder than capturing them at acquisition. I will not start a program in a regulated vertical without this foundation in place.
Full Deliverables
- Platform setup - Customer.io configured across 2 workspaces, 3 properties (Casino.online, Blackjack, NoxWin).
- Subscriber routing campaign - full DOI/SOI market-routing campaign with duplicate protection and 15-day suppression logic.
- Welcome campaign - 4-email onboarding sequence with frequency-based timing and built-in A/B testing.
- Quarterly newsletter campaigns - Q3 2025, Q4 2025, Q1 2026, each with intent-based subscriber routing from welcome signals.
- Helper campaigns - Already Subscribed and Suppressed Status campaigns.
- Transactional email suite - 5 email types across 4 geos: magic link signup, magic link login, review confirmation, comment confirmation, account registration.
- Component library - footers (3 types), headers (3 languages), CTA buttons, author profiles, Top 10 casino tables.
- Segment architecture - lifecycle, geo, language, topic, and engagement segments; manual and data-driven.
- Compliance data model - subscriber attribute schema capturing country, consent text, consent date, IP, and registration proof.
- Weekly automated reporting - Customer.io AI Agent report delivered every Monday with campaign statistics.
- Deliverability protocols - bounce management, fake entry cleanup, internal exclusion, suppressed user review process.
- Full technical handover - complete documentation covering all campaigns, segments, components, naming conventions, and processes.
*Engagement conducted in a freelance capacity. Results reflect client implementation of program recommendations.*
Do You Want to Work With Me?
I'm here to bring a hands-on approach, data-driven insights, and dedication to delivering measurable results - reach out anytime.