landing-page-optimizer
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseLanding Page Optimizer
落地页优化器
Instructions
使用说明
When optimizing landing pages:
- Audit current page (speed, UX, conversion elements)
- Identify improvement areas
- Implement optimizations
- Set up tracking
优化落地页时,请遵循以下步骤:
- 审核当前页面(速度、UX、转化元素)
- 识别可改进环节
- 落地优化措施
- 配置追踪埋点
Above the Fold Checklist
首屏检查清单
- Clear headline - Value proposition in <5 seconds
- Supporting subheadline - Expand on benefit
- Hero image/video - Relevant, high-quality
- Primary CTA - Contrasting color, action-oriented
- Social proof - Logos, ratings, testimonials
- No navigation distractions - Minimal or hidden nav
- 清晰的标题 - 5秒内传递价值主张
- 辅助副标题 - 拓展说明产品收益
- 英雄区图片/视频 - 相关、高质量
- 核心CTA - 高对比配色、行动导向
- 社交证明 - 品牌logo、评分、用户 testimonial
- 无导航干扰 - 极简导航或隐藏导航
Page Structure Template
页面结构模板
tsx
// Optimal landing page structure
<main>
{/* 1. Hero Section */}
<section className="min-h-[80vh] flex items-center">
<div className="max-w-6xl mx-auto px-4 grid lg:grid-cols-2 gap-12 items-center">
<div>
<Badge>New Feature</Badge>
<h1 className="text-4xl lg:text-6xl font-bold mt-4">
Main Value Proposition
</h1>
<p className="text-xl text-gray-600 mt-6">
Supporting statement that expands on the benefit
</p>
<div className="flex gap-4 mt-8">
<Button size="lg">Primary CTA</Button>
<Button size="lg" variant="outline">Secondary CTA</Button>
</div>
<div className="flex items-center gap-6 mt-8">
<div className="flex -space-x-2">
{avatars.map(a => <Avatar key={a.id} src={a.src} />)}
</div>
<p className="text-sm text-gray-600">
<strong>2,000+</strong> happy customers
</p>
</div>
</div>
<div>
<img src="/hero-image.png" alt="Product preview" />
</div>
</div>
</section>
{/* 2. Social Proof - Logos */}
<section className="py-12 bg-gray-50">
<p className="text-center text-gray-500 mb-8">Trusted by leading companies</p>
<div className="flex justify-center gap-12 opacity-60">
{logos.map(logo => <img key={logo.name} src={logo.src} alt={logo.name} />)}
</div>
</section>
{/* 3. Problem/Solution */}
<section className="py-20">
<div className="max-w-3xl mx-auto text-center">
<h2 className="text-3xl font-bold">The Problem</h2>
<p className="text-xl text-gray-600 mt-4">
Describe the pain point your audience faces
</p>
</div>
</section>
{/* 4. Features/Benefits */}
<section className="py-20 bg-gray-50">
<h2 className="text-3xl font-bold text-center">How It Works</h2>
<div className="grid md:grid-cols-3 gap-8 mt-12 max-w-6xl mx-auto">
{features.map(feature => (
<Card key={feature.title}>
<feature.icon className="w-12 h-12 text-primary-500" />
<h3 className="text-xl font-semibold mt-4">{feature.title}</h3>
<p className="text-gray-600 mt-2">{feature.description}</p>
</Card>
))}
</div>
</section>
{/* 5. Testimonials */}
<section className="py-20">
<h2 className="text-3xl font-bold text-center">What Customers Say</h2>
<div className="grid md:grid-cols-2 lg:grid-cols-3 gap-8 mt-12">
{testimonials.map(t => (
<TestimonialCard key={t.name} {...t} />
))}
</div>
</section>
{/* 6. Pricing (if applicable) */}
<section className="py-20 bg-gray-50">
<PricingTable plans={plans} />
</section>
{/* 7. FAQ */}
<section className="py-20">
<h2 className="text-3xl font-bold text-center">FAQ</h2>
<Accordion items={faqs} className="max-w-3xl mx-auto mt-12" />
</section>
{/* 8. Final CTA */}
<section className="py-20 bg-primary-600 text-white text-center">
<h2 className="text-3xl font-bold">Ready to Get Started?</h2>
<p className="text-xl opacity-90 mt-4">Join 2,000+ companies already using our product</p>
<Button size="lg" variant="secondary" className="mt-8">
Start Free Trial
</Button>
<p className="text-sm opacity-75 mt-4">No credit card required</p>
</section>
</main>tsx
// Optimal landing page structure
<main>
{/* 1. Hero Section */}
<section className="min-h-[80vh] flex items-center">
<div className="max-w-6xl mx-auto px-4 grid lg:grid-cols-2 gap-12 items-center">
<div>
<Badge>New Feature</Badge>
<h1 className="text-4xl lg:text-6xl font-bold mt-4">
Main Value Proposition
</h1>
<p className="text-xl text-gray-600 mt-6">
Supporting statement that expands on the benefit
</p>
<div className="flex gap-4 mt-8">
<Button size="lg">Primary CTA</Button>
<Button size="lg" variant="outline">Secondary CTA</Button>
</div>
<div className="flex items-center gap-6 mt-8">
<div className="flex -space-x-2">
{avatars.map(a => <Avatar key={a.id} src={a.src} />)}
</div>
<p className="text-sm text-gray-600">
<strong>2,000+</strong> happy customers
</p>
</div>
</div>
<div>
<img src="/hero-image.png" alt="Product preview" />
</div>
</div>
</section>
{/* 2. Social Proof - Logos */}
<section className="py-12 bg-gray-50">
<p className="text-center text-gray-500 mb-8">Trusted by leading companies</p>
<div className="flex justify-center gap-12 opacity-60">
{logos.map(logo => <img key={logo.name} src={logo.src} alt={logo.name} />)}
</div>
</section>
{/* 3. Problem/Solution */}
<section className="py-20">
<div className="max-w-3xl mx-auto text-center">
<h2 className="text-3xl font-bold">The Problem</h2>
<p className="text-xl text-gray-600 mt-4">
Describe the pain point your audience faces
</p>
</div>
</section>
{/* 4. Features/Benefits */}
<section className="py-20 bg-gray-50">
<h2 className="text-3xl font-bold text-center">How It Works</h2>
<div className="grid md:grid-cols-3 gap-8 mt-12 max-w-6xl mx-auto">
{features.map(feature => (
<Card key={feature.title}>
<feature.icon className="w-12 h-12 text-primary-500" />
<h3 className="text-xl font-semibold mt-4">{feature.title}</h3>
<p className="text-gray-600 mt-2">{feature.description}</p>
</Card>
))}
</div>
</section>
{/* 5. Testimonials */}
<section className="py-20">
<h2 className="text-3xl font-bold text-center">What Customers Say</h2>
<div className="grid md:grid-cols-2 lg:grid-cols-3 gap-8 mt-12">
{testimonials.map(t => (
<TestimonialCard key={t.name} {...t} />
))}
</div>
</section>
{/* 6. Pricing (if applicable) */}
<section className="py-20 bg-gray-50">
<PricingTable plans={plans} />
</section>
{/* 7. FAQ */}
<section className="py-20">
<h2 className="text-3xl font-bold text-center">FAQ</h2>
<Accordion items={faqs} className="max-w-3xl mx-auto mt-12" />
</section>
{/* 8. Final CTA */}
<section className="py-20 bg-primary-600 text-white text-center">
<h2 className="text-3xl font-bold">Ready to Get Started?</h2>
<p className="text-xl opacity-90 mt-4">Join 2,000+ companies already using our product</p>
<Button size="lg" variant="secondary" className="mt-8">
Start Free Trial
</Button>
<p className="text-sm opacity-75 mt-4">No credit card required</p>
</section>
</main>CTA Optimization
CTA优化
Button Best Practices
按钮最佳实践
tsx
// Good CTAs
<Button>Start Free Trial</Button>
<Button>Get Started Free</Button>
<Button>Try It Free for 14 Days</Button>
<Button>Book a Demo</Button>
// Add urgency/value
<Button>
Get 50% Off Today
<span className="text-sm opacity-75 block">Offer ends midnight</span>
</Button>
// Reduce friction
<div className="text-center">
<Button size="lg">Start Free Trial</Button>
<p className="text-sm text-gray-500 mt-2">
No credit card required • Cancel anytime
</p>
</div>tsx
// Good CTAs
<Button>Start Free Trial</Button>
<Button>Get Started Free</Button>
<Button>Try It Free for 14 Days</Button>
<Button>Book a Demo</Button>
// Add urgency/value
<Button>
Get 50% Off Today
<span className="text-sm opacity-75 block">Offer ends midnight</span>
</Button>
// Reduce friction
<div className="text-center">
<Button size="lg">Start Free Trial</Button>
<p className="text-sm text-gray-500 mt-2">
No credit card required • Cancel anytime
</p>
</div>CTA Placement
CTA放置位置
- Hero section - Primary CTA above fold
- After features - Reinforce value
- After testimonials - Social proof boost
- Sticky header/footer - Always accessible
- Exit intent popup - Last chance
- 英雄区 - 首屏放置核心CTA
- 功能介绍之后 - 强化价值感知
- 用户评价之后 - 借助社交证明提升转化
- 粘性头部/底部 - 随时可访问
- 退出意图弹窗 - 最后转化机会
Performance Optimization
性能优化
Image Optimization
图片优化
tsx
// Next.js Image component
import Image from 'next/image';
<Image
src="/hero.png"
alt="Product screenshot"
width={1200}
height={800}
priority // Above-fold images
placeholder="blur"
blurDataURL={blurData}
/>
// Lazy load below-fold images
<Image
src="/feature.png"
loading="lazy"
...
/>tsx
// Next.js Image component
import Image from 'next/image';
<Image
src="/hero.png"
alt="Product screenshot"
width={1200}
height={800}
priority // Above-fold images
placeholder="blur"
blurDataURL={blurData}
/>
// Lazy load below-fold images
<Image
src="/feature.png"
loading="lazy"
...
/>Critical CSS
关键CSS
tsx
// Inline critical styles for above-fold
<head>
<style dangerouslySetInnerHTML={{ __html: criticalCSS }} />
<link rel="preload" href="/fonts/inter.woff2" as="font" crossOrigin="" />
</head>tsx
// Inline critical styles for above-fold
<head>
<style dangerouslySetInnerHTML={{ __html: criticalCSS }} />
<link rel="preload" href="/fonts/inter.woff2" as="font" crossOrigin="" />
</head>Performance Targets
性能指标目标
| Metric | Target |
|---|---|
| LCP | < 2.5s |
| FID/INP | < 100ms |
| CLS | < 0.1 |
| Total Size | < 1MB |
| Time to Interactive | < 3s |
| 指标 | 目标值 |
|---|---|
| LCP | < 2.5s |
| FID/INP | < 100ms |
| CLS | < 0.1 |
| 总资源大小 | < 1MB |
| 可交互时间 | < 3s |
SEO Optimization
SEO优化
Meta Tags
Meta标签
tsx
// app/layout.tsx or pages/_app.tsx
export const metadata = {
title: 'Product Name - Main Benefit | Brand',
description: 'Clear description with keywords. 150-160 chars.',
openGraph: {
title: 'Product Name - Main Benefit',
description: 'Description for social sharing',
images: [{ url: '/og-image.png', width: 1200, height: 630 }],
},
twitter: {
card: 'summary_large_image',
},
};tsx
// app/layout.tsx or pages/_app.tsx
export const metadata = {
title: 'Product Name - Main Benefit | Brand',
description: 'Clear description with keywords. 150-160 chars.',
openGraph: {
title: 'Product Name - Main Benefit',
description: 'Description for social sharing',
images: [{ url: '/og-image.png', width: 1200, height: 630 }],
},
twitter: {
card: 'summary_large_image',
},
};Structured Data
结构化数据
tsx
<script type="application/ld+json">
{JSON.stringify({
"@context": "https://schema.org",
"@type": "SoftwareApplication",
"name": "Product Name",
"applicationCategory": "BusinessApplication",
"offers": {
"@type": "Offer",
"price": "29",
"priceCurrency": "USD"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.8",
"reviewCount": "1250"
}
})}
</script>tsx
<script type="application/ld+json">
{JSON.stringify({
"@context": "https://schema.org",
"@type": "SoftwareApplication",
"name": "Product Name",
"applicationCategory": "BusinessApplication",
"offers": {
"@type": "Offer",
"price": "29",
"priceCurrency": "USD"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.8",
"reviewCount": "1250"
}
})}
</script>Conversion Tracking
转化追踪
tsx
// Google Analytics 4 events
const trackCTA = (ctaName: string) => {
gtag('event', 'cta_click', {
cta_name: ctaName,
page_location: window.location.href,
});
};
// Track scroll depth
useEffect(() => {
const observer = new IntersectionObserver(
(entries) => {
entries.forEach((entry) => {
if (entry.isIntersecting) {
gtag('event', 'section_viewed', {
section_name: entry.target.id,
});
}
});
},
{ threshold: 0.5 }
);
document.querySelectorAll('section[id]').forEach((section) => {
observer.observe(section);
});
}, []);tsx
// Google Analytics 4 events
const trackCTA = (ctaName: string) => {
gtag('event', 'cta_click', {
cta_name: ctaName,
page_location: window.location.href,
});
};
// Track scroll depth
useEffect(() => {
const observer = new IntersectionObserver(
(entries) => {
entries.forEach((entry) => {
if (entry.isIntersecting) {
gtag('event', 'section_viewed', {
section_name: entry.target.id,
});
}
});
},
{ threshold: 0.5 }
);
document.querySelectorAll('section[id]').forEach((section) => {
observer.observe(section);
});
}, []);A/B Testing Elements
A/B测试元素
Priority elements to test:
- Headline copy - Different value propositions
- CTA text - "Start Free" vs "Get Started" vs "Try Now"
- CTA color - High contrast options
- Hero image - Product vs people vs abstract
- Social proof placement - Above vs below fold
- Pricing display - Monthly vs annual default
- Form length - Email only vs full form
优先测试的元素:
- 标题文案 - 不同的价值主张
- CTA文案 - "Start Free" vs "Get Started" vs "Try Now"
- CTA配色 - 高对比度选项
- 英雄区图片 - 产品图 vs 人物图 vs 抽象图
- 社交证明位置 - 首屏 vs 首屏以下
- 定价展示 - 默认显示月付 vs 年付
- 表单长度 - 仅需邮箱 vs 完整表单
Mobile Optimization
移动端优化
tsx
// Thumb-friendly CTAs
<Button className="w-full md:w-auto h-14 text-lg">
Get Started
</Button>
// Sticky mobile CTA
<div className="fixed bottom-0 left-0 right-0 p-4 bg-white border-t md:hidden">
<Button className="w-full">Start Free Trial</Button>
</div>
// Reduce content on mobile
<p className="hidden md:block">
{fullDescription}
</p>
<p className="md:hidden">
{shortDescription}
</p>tsx
// Thumb-friendly CTAs
<Button className="w-full md:w-auto h-14 text-lg">
Get Started
</Button>
// Sticky mobile CTA
<div className="fixed bottom-0 left-0 right-0 p-4 bg-white border-t md:hidden">
<Button className="w-full">Start Free Trial</Button>
</div>
// Reduce content on mobile
<p className="hidden md:block">
{fullDescription}
</p>
<p className="md:hidden">
{shortDescription}
</p>Quick Wins Checklist
快速优化检查清单
- Headline communicates value in 5 seconds
- CTA button is high contrast and above fold
- Page loads in under 3 seconds
- Social proof visible above fold
- Mobile-optimized with thumb-friendly CTAs
- No broken images or links
- Forms have minimal required fields
- Trust badges near CTAs (security, guarantees)
- Clear pricing (no hidden fees messaging)
- Testimonials include photos and titles
- 标题可在5秒内传递核心价值
- CTA按钮高对比度且位于首屏
- 页面加载耗时低于3秒
- 首屏可见社交证明
- 移动端适配,CTA便于拇指点击
- 无损坏的图片或链接
- 表单必填字段最少化
- CTA附近放置信任标识(安全、保障类)
- 定价清晰(无隐藏费用提示)
- 用户评价包含头像和职位