Files
wow-design-wiki/psychology/testimonials.md
T

361 lines
9.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
name: psychology/testimonials
title: Social Proof & Testimonials
description: Trust-building patterns: testimonials, logos, reviews, trust badges.
tags: [psychology, social-proof, trust, testimonials, conversion, cialdini]
source: stripe.com, linear.app, raycast.com, resend.com, cialdini.com
---
# Social Proof & Testimonials
## Что это
Шаблоны социального доказательства: отзывы, логотипы клиентов, цифры, trust badges. Основано на законе социального доказательства Роберта Циялдини.
## Пирамида Доверия
```
[Trust Badges + Security Certifications] ← Максимальное доверие
↓
[Logos of Known Clients] ← Доверие к бренду
↓
[Statistics / Numbers] ← Доверие к цифрам
↓
[Testimonials] ← Доверие к людям
↓
[Case Studies] ← Глубокое доверие
```
## Pattern 1: Logo Cloud (Monochrome)
```html
<section class="logo-cloud">
<p class="logo-cloud-label">Нам доверяют более 500 компаний</p>
<div class="logo-grid">
<img src="/clients/airbnb.svg" alt="Airbnb" loading="lazy">
<img src="/clients/linear.svg" alt="Linear" loading="lazy">
<img src="/clients/stripe.svg" alt="Stripe" loading="lazy">
<img src="/clients/vercel.svg" alt="Vercel" loading="lazy">
<img src="/clients/raycast.svg" alt="Raycast" loading="lazy">
<img src="/clients/resend.svg" alt="Resend" loading="lazy">
</div>
</section>
```
```css
.logo-cloud {
text-align: center;
padding: 80px 0;
border-bottom: 1px solid var(--color-border);
}
.logo-cloud-label {
font-size: 14px;
color: var(--color-text-muted);
text-transform: uppercase;
letter-spacing: 0.1em;
font-weight: 600;
margin-bottom: 32px;
}
.logo-grid {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
gap: 48px;
max-width: 800px;
margin: 0 auto;
}
.logo-grid img {
height: 32px;
width: auto;
opacity: 0.4;
filter: brightness(0) invert(1);
transition: opacity 0.3s ease;
}
.logo-grid img:hover {
opacity: 0.7;
}
/* Responsive */
@media (max-width: 768px) {
.logo-grid {
gap: 24px;
}
.logo-grid img {
height: 24px;
}
}
```
## Pattern 2: Testimonial Cards
```html
<section class="testimonials">
<h2>Что говорят наши клиенты</h2>
<div class="testimonial-grid">
<article class="testimonial-card">
<div class="testimonial-stars">
<span>★</span><span>★</span><span>★</span><span>★</span><span>★</span>
</div>
<blockquote>"calls24 помог нам увеличить конверсию из звонков на 40%. Мы знали о проблемах, но не видели их." — Мария К., Руководитель отдела продаж</blockquote>
<footer class="testimonial-author">
<img src="/avatars/maria.jpg" alt="Мария К." loading="lazy">
<div>
<strong>Мария К.</strong>
<span>Руководитель отдела продаж, Agency X</span>
</div>
</footer>
</article>
<article class="testimonial-card featured">
<div class="testimonial-stars">
<span>★</span><span>★</span><span>★</span><span>★</span><span>★</span>
</div>
<blockquote>"Мы протестировали 3 инструмента аналитики. calls24 — единственный, который дал реальные инсайты, а не просто цифры." — Алексей П., CEO</blockquote>
<footer class="testimonial-author">
<img src="/avatars/alexey.jpg" alt="Алексей П." loading="lazy">
<div>
<strong>Алексей П.</strong>
<span>CEO, RealEstate Pro</span>
</div>
</footer>
</article>
<article class="testimonial-card">
<div class="testimonial-stars">
<span>★</span><span>★</span><span>★</span><span>★</span><span>★</span>
</div>
<blockquote>"Теперь каждый менеджер знает, где ошибается. Еженедельный отчёт — наш инструмент развития." — Дмитрий В., Директор"
<footer class="testimonial-author">
<img src="/avatars/dmitry.jpg" alt="Дмитрий В." loading="lazy">
<div>
<strong>Дмитрий В.</strong>
<span>Директор, Broker Plus</span>
</div>
</footer>
</article>
</div>
</section>
```
```css
.testimonial-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
gap: 24px;
margin-top: 48px;
}
.testimonial-card {
background: var(--color-surface);
border: 1px solid var(--color-border);
border-radius: 20px;
padding: 32px;
transition: all 0.3s ease;
}
.testimonial-card:hover {
border-color: var(--color-border-hover);
transform: translateY(-4px);
}
.testimonial-card.featured {
border-color: var(--color-accent);
grid-column: span 1;
}
.testimonial-stars {
display: flex;
gap: 4px;
color: #fbbf24;
font-size: 20px;
margin-bottom: 16px;
}
.testimonial-card blockquote {
font-size: 1rem;
line-height: 1.7;
color: var(--color-text-secondary);
margin-bottom: 24px;
font-style: italic;
}
.testimonial-author {
display: flex;
align-items: center;
gap: 12px;
padding-top: 20px;
border-top: 1px solid var(--color-border);
}
.testimonial-author img {
width: 44px;
height: 44px;
border-radius: 50%;
object-fit: cover;
border: 2px solid var(--color-border);
}
.testimonial-author strong {
display: block;
font-size: 0.95rem;
}
.testimonial-author span {
font-size: 0.85rem;
color: var(--color-text-muted);
}
```
## Pattern 3: Numbers/Stats Bar
```html
<section class="stats">
<div class="stats-grid">
<div class="stat-item">
<span class="stat-number">99</span>
<span class="stat-label">звонков проанализировано</span>
</div>
<div class="stat-item">
<span class="stat-number gradient-text">85%</span>
<span class="stat-label">не соответствуют скрипту</span>
</div>
<div class="stat-item">
<span class="stat-number">40%</span>
<span class="stat-label">рост конверсии с calls24</span>
</div>
<div class="stat-item">
<span class="stat-number">500+</span>
<span class="stat-label">агентств используют</span>
</div>
</div>
</section>
```
```css
.stats {
padding: 80px 0;
border-bottom: 1px solid var(--color-border);
}
.stats-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 24px;
text-align: center;
}
.stat-number {
display: block;
font-size: 3rem;
font-weight: 900;
color: var(--color-accent);
margin-bottom: 8px;
}
.stat-label {
font-size: 0.875rem;
color: var(--color-text-muted);
text-transform: uppercase;
letter-spacing: 0.1em;
font-weight: 600;
}
@media (max-width: 768px) {
.stats-grid {
grid-template-columns: repeat(2, 1fr);
}
}
```
## Pattern 4: Trust Badges
```html
<div class="trust-badges">
<div class="trust-badge">
<svg width="24" height="24">🔒</svg>
<span>SSL encrypted</span>
</div>
<div class="trust-badge">
<svg width="24" height="24">🛡️</svg>
<span>GDPR compliant</span>
</div>
<div class="trust-badge">
<svg width="24" height="24">✓</svg>
<span>30-day free trial</span>
</div>
<div class="trust-badge">
<svg width="24" height="24">⭐</svg>
<span>4.9/5 on Trustpilot</span>
</div>
</div>
```
```css
.trust-badges {
display: flex;
gap: 24px;
flex-wrap: wrap;
justify-content: center;
}
.trust-badge {
display: flex;
align-items: center;
gap: 8px;
padding: 8px 16px;
background: var(--color-surface);
border: 1px solid var(--color-border);
border-radius: 8px;
font-size: 0.875rem;
color: var(--color-text-secondary);
}
```
## Cialdini's Principles Applied
### 1. Social Proof (Люди делают как другие)
- Логотипы клиентов
- Количество пользователей
- Отзывы с фото
### 2. Authority (Доверие к экспертам)
- Сертификаты
- Отзывы от известных лиц
- Медиа-упоминания
### 3. Consistency (Последовательность)
- "Вы уже сделали первый шаг..."
- Продолжение бесплатного аудита
## Anti-patterns
| ❌ Плохо | ✅ Хорошо |
|----------|-----------|
| Fake testimonials | Реальные отзывы с фото |
| 1000+ клиентов (без доказательств) | "500+ агентств" + логотипы |
| Без context | С именем, должностью, компанией |
| Только текст | Текст + фото + цитата + звезды |
| Без trust badges | SSL, GDPR, сертификаты |
## CV Service Validation
```bash
# Проверить social proof
curl -s -X POST http://localhost:8001/design/analyze-dom \
-H "Content-Type: application/json" \
-d '{"html": "..."}' | python3 -c "
import sys, json
d = json.load(sys.stdin)
social = d['analyzers'].get('social_proof', {})
print(f\"Social Proof: {social.get('score', 'N/A')}/10\")
print(f\" Testimonials: {social.get('testimonials', 'N/A')}\")
print(f\" Logos: {social.get('client_logos', 'N/A')}\")
"
```
Ожидается: `social_proof` > 5 (должны быть отзывы/логотипы/цифры).