*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root {
--violet-deep: #4C1D95;
--violet-mid: #6D28D9;
--violet-core: #7C3AED;
--violet-light: #8B5CF6;
--violet-soft: #A78BFA;
--violet-pale: #DDD6FE;
--violet-wash: #f6f1fd;
--violet-tint: #ede9fe;
--page-bg: #F9FAFB;
--surface: #FFFFFF;
--border: #E5E7EB;
--border-mid: #D1D5DB;
--text-primary: #111827;
--text-secondary: #374151;
--text-muted: #6B7280;
--text-faint: #9CA3AF;
}
html { scroll-behavior: smooth; }
body {
font-family: 'DM Sans', sans-serif;
background: var(--page-bg);
color: var(--text-primary);
overflow-x: hidden;
line-height: 1.6;
}
.btn-ghost {
font-size: 13px; color: var(--text-secondary); text-decoration: none;
padding: 7px 16px; border-radius: 8px; border: 0.5px solid var(--border-mid);
transition: border-color 0.2s, color 0.2s;
}
.btn-ghost:hover { border-color: var(--violet-core); color: var(--violet-core); }
.btn-primary {
font-size: 13px; font-weight: 500; color: #fff; text-decoration: none;
padding: 8px 20px; background: var(--violet-core); border-radius: 8px;
border: none; cursor: pointer; transition: background 0.2s, transform 0.15s;
display: inline-flex; align-items: center; gap: 6px;
}
.btn-primary:hover { background: var(--violet-light); transform: translateY(-1px); }
/* SHARED */
.container { max-width: 1080px; margin: 0 auto; padding: 0 32px; }
.section-label {
font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase;
color: var(--violet-core); margin-bottom: 14px;
display: flex; align-items: center; gap: 10px;
}
.section-label::after { content:''; flex:1; max-width:36px; height:0.5px; background:var(--violet-pale); }
@keyframes fadeUp { from{opacity:0;transform:translateY(18px)} to{opacity:1;transform:translateY(0)} }
.fade-up { opacity:0; transform:translateY(22px); transition:opacity 0.55s ease, transform 0.55s ease; }
.fade-up.visible { opacity:1; transform:translateY(0); }
/* PAGE HEADER */
.page-header {
background: var(--surface);
border-bottom: 0.5px solid var(--border);
padding: 120px 0 80px;
text-align: center;
position: relative;
overflow: hidden;
}
.page-header::before {
content: ''; position: absolute; top: 0; left: 0; right: 0; height: 400px;
background: radial-gradient(ellipse 80% 60% at 50% -10%, rgba(167,139,250,0.12) 0%, transparent 70%);
pointer-events: none;
}
.page-header h1 {
font-family: 'DM Serif Display', serif;
font-size: clamp(36px, 5vw, 64px);
line-height: 1.07;
letter-spacing: -1px;
color: var(--text-primary);
margin-bottom: 18px;
animation: fadeUp 0.5s ease 0.08s both;
}
.page-header h1 em { font-style: italic; color: var(--violet-core); }
.page-header p {
font-size: 18px;
color: var(--text-muted);
font-weight: 300;
max-width: 480px;
margin: 0 auto 32px;
line-height: 1.65;
animation: fadeUp 0.5s ease 0.16s both;
}
/* BILLING TOGGLE */
.billing-toggle {
display: inline-flex;
align-items: center;
gap: 12px;
background: var(--page-bg);
border: 0.5px solid var(--border);
border-radius: 40px;
padding: 5px 6px;
margin-bottom: 0;
animation: fadeUp 0.5s ease 0.24s both;
}
.toggle-opt {
font-size: 13px;
color: var(--text-muted);
padding: 6px 16px;
border-radius: 40px;
cursor: pointer;
transition: all 0.2s;
user-select: none;
}
.toggle-opt.active {
background: var(--surface);
color: var(--text-primary);
font-weight: 500;
box-shadow: 0 1px 4px rgba(0,0,0,0.08);
}
.save-badge {
font-size: 11px;
color: var(--violet-core);
background: var(--violet-tint);
border: 0.5px solid var(--violet-pale);
border-radius: 20px;
padding: 2px 9px;
}
/* PLANS */
.plans-section {
padding: 72px 0;
background: var(--page-bg);
}
.plan-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 1px;
background: var(--border);
border: 0.5px solid var(--border);
border-radius: 16px;
overflow: hidden;
}
.plan {
background: var(--surface);
padding: 36px 32px;
display: flex;
flex-direction: column;
position: relative;
}
.plan.featured {
background: var(--violet-wash);
outline: 1.5px solid var(--violet-core);
outline-offset: -1px;
}
.plan-badge-top {
position: absolute;
top: -1px; left: 50%;
transform: translateX(-50%);
font-size: 11px; font-weight: 500;
color: #fff; background: var(--violet-core);
padding: 3px 14px;
border-radius: 0 0 8px 8px;
white-space: nowrap;
}
.plan-name {
font-size: 12px; font-weight: 500;
color: var(--text-faint);
letter-spacing: 0.08em; text-transform: uppercase;
margin-bottom: 10px;
}
.plan-price-row { display: flex; align-items: baseline; gap: 4px; margin-bottom: 4px; }
.plan-price {
font-family: 'DM Serif Display', serif;
font-size: 52px; color: var(--text-primary);
line-height: 1; letter-spacing: -1px;
}
.plan-period { font-size: 14px; color: var(--text-faint); }
.plan-annual-note {
font-size: 12px; color: var(--text-faint);
margin-bottom: 22px; min-height: 18px;
}
.plan-annual-note.saving { color: var(--violet-core); }
.plan-tagline {
font-size: 13px; color: var(--text-muted);
line-height: 1.55; margin-bottom: 22px;
font-weight: 300;
}
.plan-divider { height: 0.5px; background: var(--border); margin-bottom: 22px; }
.plan-features {
list-style: none; flex: 1;
display: flex; flex-direction: column; gap: 11px;
margin-bottom: 28px;
}
.plan-features li {
font-size: 13px; color: var(--text-secondary);
display: flex; align-items: flex-start; gap: 9px; line-height: 1.4;
}
.plan-features li.muted { color: var(--text-faint); }
.pf-soon {
width: 16px; height: 16px; border-radius: 50%;
background: #fef9c3; flex-shrink: 0;
display: flex; align-items: center; justify-content: center;
border: 0.5px solid #fde68a;
}
.pf-soon::after { content:''; width:2px; height:6px; background:#ca8a04; display:block; border-radius:1px; }
.soon-badge {
font-size: 10px; font-weight: 500;
color: #92400e; background: #fef3c7;
border: 0.5px solid #fde68a;
border-radius: 20px; padding: 1px 7px;
margin-left: 4px; white-space: nowrap;
}
.pf-check {
width: 16px; height: 16px; border-radius: 50%;
background: var(--violet-tint); flex-shrink: 0;
display: flex; align-items: center; justify-content: center;
}
.pf-check svg { width: 9px; height: 9px; stroke: var(--violet-core); fill: none; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }
.pf-dash {
width: 16px; height: 16px; border-radius: 50%;
background: var(--page-bg); flex-shrink: 0;
display: flex; align-items: center; justify-content: center;
border: 0.5px solid var(--border);
}
.pf-dash::after { content:''; width:8px; height:1px; background:var(--text-faint); display:block; }
.plan-btn {
width: 100%; padding: 11px;
border-radius: 9px; font-size: 14px; font-weight: 500;
cursor: pointer; font-family: 'DM Sans', sans-serif;
text-align: center; text-decoration: none;
display: block; transition: all 0.2s;
border: 0.5px solid var(--border-mid);
background: transparent; color: var(--text-secondary);
}
.plan-btn:hover { border-color: var(--violet-core); color: var(--violet-core); }
.plan-btn.featured-btn {
background: var(--violet-core); border-color: var(--violet-core); color: #fff;
box-shadow: 0 4px 16px rgba(124,58,237,0.22);
}
.plan-btn.featured-btn:hover { background: var(--violet-light); }
.plan-trial-note {
text-align: center; font-size: 12px; color: var(--text-faint);
margin-top: 10px;
}
/* CHANNEL EXPLAINER */
.explainer {
padding: 80px 0;
background: var(--surface);
border-top: 0.5px solid var(--border);
}
.explainer-inner {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 72px;
align-items: center;
}
.explainer-copy h2 {
font-family: 'DM Serif Display', serif;
font-size: clamp(26px, 3vw, 40px);
line-height: 1.15; letter-spacing: -0.5px;
color: var(--text-primary); margin-bottom: 16px;
}
.explainer-copy h2 em { font-style: italic; color: var(--violet-core); }
.explainer-copy p {
font-size: 15px; color: var(--text-muted);
line-height: 1.7; font-weight: 300; margin-bottom: 20px;
}
.channel-examples { display: flex; flex-direction: column; gap: 8px; }
.ch-ex {
display: flex; align-items: center; gap: 12px;
background: var(--page-bg); border: 0.5px solid var(--border);
border-radius: 9px; padding: 10px 14px;
}
.ch-ex-sub {
font-size: 12px; font-weight: 500; color: var(--violet-core);
background: var(--violet-tint); border-radius: 20px;
padding: 2px 9px; flex-shrink: 0;
}
.ch-ex-kws {
display: flex; flex-wrap: wrap; gap: 5px; flex: 1;
}
.kw {
font-size: 11px; padding: 2px 8px;
background: var(--surface); border: 0.5px solid var(--border);
border-radius: 20px; color: var(--text-muted);
}
/* GUARANTEE */
.guarantee {
padding: 80px 0;
background: var(--page-bg);
border-top: 0.5px solid var(--border);
}
.guarantee-inner {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 1px;
background: var(--border);
border: 0.5px solid var(--border);
border-radius: 16px;
overflow: hidden;
}
.guarantee-card {
background: var(--surface);
padding: 36px 36px;
}
.guarantee-card.tinted { background: var(--violet-wash); }
.g-icon {
width: 44px; height: 44px;
background: var(--violet-tint);
border: 0.5px solid var(--violet-pale);
border-radius: 11px;
display: flex; align-items: center; justify-content: center;
margin-bottom: 18px;
}
.g-icon svg { width: 22px; height: 22px; stroke: var(--violet-core); fill: none; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.g-title {
font-size: 18px; font-weight: 500; color: var(--text-primary);
margin-bottom: 10px; letter-spacing: -0.2px;
}
.g-body {
font-size: 14px; color: var(--text-muted);
line-height: 1.7; font-weight: 300;
}
.g-body strong { font-weight: 500; color: var(--text-secondary); }
/* FAQ */
.faq {
padding: 80px 0;
background: var(--surface);
border-top: 0.5px solid var(--border);
}
.faq-head { max-width: 480px; margin-bottom: 48px; }
.faq-head h2 {
font-family: 'DM Serif Display', serif;
font-size: clamp(26px, 3vw, 40px);
line-height: 1.1; letter-spacing: -0.5px;
color: var(--text-primary);
}
.faq-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 1px;
background: var(--border);
border: 0.5px solid var(--border);
border-radius: 16px;
overflow: hidden;
}
.faq-item {
background: var(--surface);
padding: 28px 28px;
transition: background 0.2s;
}
.faq-item:hover { background: var(--violet-wash); }
.faq-q {
font-size: 15px; font-weight: 500;
color: var(--text-primary); margin-bottom: 10px;
letter-spacing: -0.1px; line-height: 1.35;
}
.faq-a {
font-size: 14px; color: var(--text-muted);
line-height: 1.7; font-weight: 300;
}
.faq-a a { color: var(--violet-core); text-decoration: none; }
.faq-a a:hover { text-decoration: underline; }
/* CTA */
.cta-section {
padding: 112px 0 140px;
background: var(--violet-wash);
border-top: 0.5px solid var(--violet-pale);
text-align: center;
}
.cta-section h2 {
font-family: 'DM Serif Display', serif;
font-size: clamp(32px, 4.5vw, 60px);
line-height: 1.07; letter-spacing: -1px;
color: var(--text-primary); margin-bottom: 18px;
}
.cta-section h2 em { font-style: italic; color: var(--violet-core); }
.cta-section p {
font-size: 17px; color: var(--text-muted); font-weight: 300;
max-width: 400px; margin: 0 auto 36px; line-height: 1.65;
}
.cta-actions { display: flex; align-items: center; justify-content: center; gap: 12px; flex-wrap: wrap; }
.btn-hero {
font-size: 15px; font-weight: 500; color: #fff; text-decoration: none;
padding: 13px 28px; background: var(--violet-core); border-radius: 10px;
border: none; cursor: pointer;
transition: background 0.2s, transform 0.15s, box-shadow 0.2s;
box-shadow: 0 4px 24px rgba(124,58,237,0.25);
display: inline-flex; align-items: center; gap: 8px;
}
.btn-hero:hover { background: var(--violet-light); transform: translateY(-2px); box-shadow: 0 8px 32px rgba(124,58,237,0.32); }
/* RESPONSIVE */
@media (max-width: 768px) {
.container { padding: 0 20px; }
.plan-grid { grid-template-columns: 1fr; }
.explainer-inner { grid-template-columns: 1fr; gap: 40px; }
.guarantee-inner { grid-template-columns: 1fr; }
.faq-grid { grid-template-columns: 1fr; }
.plans-section, .explainer, .guarantee, .faq, .cta-section { padding: 60px 0; }
.page-header { padding: 96px 0 60px; }
}
Starter
For founders just getting started. Two monitored communities and the core daily loop.
- 2 monitored channels
- Unlimited AI drafts
- Brand voice & reply settings
- 30-day money-back guarantee
- Article generation
- Audience insights
Get started
14-day free trial included
Most popular
Pro
For founders ready to show up consistently across five communities.
- 5 monitored channels
- Unlimited AI drafts
- Brand voice & reply settings
- Article generation
- 30-day money-back guarantee
- Audience insights Coming soon
Get started
14-day free trial included
Growth
For founders who've found their market and want to be present across fifteen communities.
- 15 monitored channels
- Unlimited AI drafts
- Brand voice & reply settings
- Article generation
- 30-day money-back guarantee
- Audience insights Coming soon
Get started
14-day free trial included
Why channels?
Your plan grows with your reach.
A channel is a community Lexly monitors for you — watching for conversations where your voice would genuinely help, then drafting your reply. Subreddits, Hacker News threads, LinkedIn communities, Substack comment sections — wherever your customers actually talk.
Most early-stage founders find their first real customers in one or two places. Start there. Expand when you know where your people are.
r/SaaS
onboarding
activation
churn
Hacker News
Show HN
founder
indie
LinkedIn
B2B founder
early customers
+ More channels available on Pro and Growth
14-day free trial
Try the full community engagement loop — conversation inbox, AI drafts, brand voice — free for two weeks. No card required.
Audience insights aren't included in the trial, but you'll see the data accumulating. By the time your trial ends, you'll have a clear picture of what's in there.
30-day money-back guarantee
If you upgrade and decide Lexly isn't right for you, we'll refund your first payment. No questions, no forms. The 30 days starts from the date you pay — not from when your trial began.
We'd rather you leave cleanly than stay unhappy. That said, we're confident you'll find it useful.
FAQ
Questions worth answering honestly.
What counts as a channel?
A channel is a community you ask Lexly to monitor — a subreddit, a Hacker News thread, a LinkedIn community, a Substack forum. Each one runs continuously, scanning new posts for conversations where your reply would add genuine value. You can pause or swap channels at any time without losing your plan tier.
Why aren't audience insights available yet?
Audience insights is in active development. Lexly is already collecting the data — monitoring conversations, identifying pain themes, tracking patterns — but the interface to surface it isn't ready yet. It'll be available to Pro and Growth plans first, at no extra charge, when it ships.
What happens when my trial ends?
You'll be prompted to choose a plan and add a payment method. Your channels, brand voice settings, and conversation history are all preserved. Nothing resets — you pick up exactly where you left off.
Can I change plans later?
Yes, at any time. Upgrading takes effect immediately. Downgrading takes effect at the end of your current billing period. If you downgrade and have more active channels than your new plan allows, you'll be asked to choose which to keep.
How does the money-back guarantee work?
If you upgrade and decide within 30 days that Lexly isn't worth it, email us and we'll refund your first payment. The 30-day window starts from your first charge — not from when your trial started. No forms, no friction.
Is there a limit on AI drafts?
No. Every plan includes unlimited AI drafts. The only thing that varies between plans is the number of communities you can monitor and access to audience insights. Draft as many replies as you need.
Your customers are talking.
Start listening.
Five minutes to set up. Two weeks to find out if it works.