TrendEntegre Logo
TrendEntegre Logo
  • Anasayfa
  • Özellikler
  • Fiyatlandırma
  • İletişim
  • Blog
TrendEntegre
TrendEntegre Logo

Trendyol entegrasyonunuzla e-ticaret süreçlerinizi otomatikleştirin ve verimliliğinizi artırın.

Sayfalar

  • Anasayfa
  • Özellikler
  • Fiyatlandırma
  • İletişim
  • Blog

Kaynaklar

  • Dokümantasyon
  • SSS
  • Gizlilik Politikası
  • Kullanım Koşulları
  • Çerez Politikası
  • KVKK Veri Envanteri
  • Hakkımızda

İletişim

Manisa / Yunusemre - 3409 / 32 / 1
+90 533 044 78 84
info@in3dex.com
Bültenimize Abone Olun

© 2024 TrendEntegre. Tüm hakları saklıdır.

TrendEntegre

© 2024 TrendEntegre. Tüm hakları saklıdır.

Araçlar

  • Kar Hesaplama
  • Hedef Fiyat

Hakkımızda

  • Hakkımızda
  • İletişim
  • SSS
info@in3dex.com
+90 533 044 78 84
Gizlilik PolitikasıKullanım KoşullarıÇerez PolitikasıKVKK

© 2025 TrendEntegre. Tüm hakları saklıdır.

Ana
Araç
Özel
YENİ
Fiyat
İletişim
  1. Ana Sayfa
  2. Ana Sayfa
  3. Blog
  4. Satış Optimizasyonu
  5. Satış Artırma Teknikleri: Kampanya ve Fiyat Optimizasyonu
Satış Optimizasyonu

Satış Artırma Teknikleri: Kampanya ve Fiyat Optimizasyonu

E-ticaret satışlarınızı %65 artıracak kampanya stratejileri, dinamik fiyatlandırma ve A/B testing yöntemleri. Veri odaklı karar alma rehberi.

Eyüp Aktaş
28 Ocak 2025
5 dakika okuma
15 görüntüleme
Satış Artırma Teknikleri: Kampanya ve Fiyat Optimizasyonu

Satış Artırma Teknikleri: Kampanya ve Fiyat Optimizasyonu

Doğru kampanya ve fiyatlandırma stratejileri, e-ticaret satışlarınızı katlanarak artırabilir. Bu rehberde veri odaklı kampanya yönetimi ve dinamik fiyatlandırma tekniklerini öğreneceksiniz.

Kampanya Türleri ve Etkileri

1. Flash Sale (Flaş İndirim)

Özellikleri:

  • Kısa süreli (%1-24 saat)
  • Yüksek indirim oranı (%30-50)
  • Aciliyet hissi yaratır
interface FlashSale {
  productId: string;
  originalPrice: number;
  discountRate: number;
  startTime: Date;
  endTime: Date;
  stockLimit: number;
}

async function createFlashSale(data: FlashSale) {
  const salePrice = data.originalPrice * (1 - data.discountRate / 100);
  
  await db.campaign.create({
    data: {
      name: `Flash Sale - ${new Date().toLocaleDateString()}`,
      type: 'FLASH_SALE',
      startDate: data.startTime,
      endDate: data.endTime,
      products: {
        create: {
          productId: data.productId,
          discountedPrice: salePrice,
          stockLimit: data.stockLimit
        }
      }
    }
  });
  
  // Bildirimleri gönder
  await sendNotifications({
    type: 'FLASH_SALE',
    productId: data.productId,
    discount: data.discountRate
  });
}

Sonuçlar: Satış artışı %150-300 🚀

2. Hafta Sonu Kampanyaları

async function scheduleWeekendCampaign() {
  const friday = new Date();
  friday.setDate(friday.getDate() + (5 - friday.getDay()));
  friday.setHours(18, 0, 0);
  
  const sunday = new Date(friday);
  sunday.setDate(sunday.getDate() + 2);
  sunday.setHours(23, 59, 59);
  
  await createCampaign({
    name: 'Hafta Sonu Fırsatları',
    startDate: friday,
    endDate: sunday,
    discountRate: 20,
    categories: ['fashion', 'electronics']
  });
}

Dinamik Fiyatlandırma Stratejileri

1. Rakip Fiyat Takibi

class CompetitorPriceTracker {
  async trackCompetitorPrices(productBarcode: string) {
    const competitors = await this.getCompetitorPrices(productBarcode);
    
    const avgPrice = competitors.reduce((sum, c) => sum + c.price, 0) / competitors.length;
    const minPrice = Math.min(...competitors.map(c => c.price));
    const maxPrice = Math.max(...competitors.map(c => c.price));
    
    return {
      averagePrice: avgPrice,
      lowestPrice: minPrice,
      highestPrice: maxPrice,
      competitorCount: competitors.length,
      recommendation: this.getPriceRecommendation(avgPrice, minPrice)
    };
  }
  
  private getPriceRecommendation(avg: number, min: number) {
    // En düşük fiyatın %5 üstünde, ortalamadan düşük
    return Math.max(min * 1.05, avg * 0.95);
  }
}

2. Talep Bazlı Fiyatlandırma

async function adjustPriceByDemand(productId: string) {
  // Son 7 günün satış verisi
  const recentSales = await db.orderItems.count({
    where: {
      productId: productId,
      createdAt: {
        gte: new Date(Date.now() - 7 * 24 * 60 * 60 * 1000)
      }
    }
  });
  
  const product = await db.product.findUnique({
    where: { id: productId }
  });
  
  let priceMultiplier = 1.0;
  
  // Yüksek talep: Fiyat artır
  if (recentSales > 50) priceMultiplier = 1.10; // +%10
  // Orta talep: Fiyat koru
  else if (recentSales > 20) priceMultiplier = 1.0;
  // Düşük talep: Fiyat düşür
  else priceMultiplier = 0.90; // -%10
  
  const newPrice = product.basePrice * priceMultiplier;
  
  await updateProductPrice(productId, newPrice);
}

A/B Testing ile Optimizasyon

Test Senaryosu Örneği

interface ABTest {
  testId: string;
  variantA: {
    price: number;
    title: string;
    image: string;
  };
  variantB: {
    price: number;
    title: string;
    image: string;
  };
}

class ABTestManager {
  async createTest(productId: string, test: ABTest) {
    await db.abTest.create({
      data: {
        productId: productId,
        status: 'RUNNING',
        variantA: test.variantA,
        variantB: test.variantB,
        startDate: new Date()
      }
    });
  }
  
  async assignVariant(userId: string, testId: string) {
    // %50-%50 dağılım
    const variant = Math.random() < 0.5 ? 'A' : 'B';
    
    await db.abTestAssignment.create({
      data: {
        userId: userId,
        testId: testId,
        variant: variant
      }
    });
    
    return variant;
  }
  
  async analyzeResults(testId: string) {
    const results = await db.orderItems.groupBy({
      by: ['abTestVariant'],
      where: { abTestId: testId },
      _count: { id: true },
      _sum: { price: true }
    });
    
    const variantA = results.find(r => r.abTestVariant === 'A');
    const variantB = results.find(r => r.abTestVariant === 'B');
    
    return {
      variantA: {
        conversions: variantA?._count.id || 0,
        revenue: variantA?._sum.price || 0
      },
      variantB: {
        conversions: variantB?._count.id || 0,
        revenue: variantB?._sum.price || 0
      },
      winner: (variantA?._sum.price || 0) > (variantB?._sum.price || 0) ? 'A' : 'B'
    };
  }
}

Sepet Analizi ve Cross-Selling

1. Sık Birlikte Alınan Ürünler

async function findFrequentlyBoughtTogether(productId: string) {
  const orders = await db.order.findMany({
    where: {
      items: {
        some: { productId: productId }
      }
    },
    include: {
      items: {
        where: { productId: { not: productId } }
      }
    }
  });
  
  // Ürün kombinasyonlarını say
  const productCounts = new Map();
  
  orders.forEach(order => {
    order.items.forEach(item => {
      const count = productCounts.get(item.productId) || 0;
      productCounts.set(item.productId, count + 1);
    });
  });
  
  // En çok birlikte alınan 5 ürün
  return Array.from(productCounts.entries())
    .sort((a, b) => b[1] - a[1])
    .slice(0, 5)
    .map(([id, count]) => ({ productId: id, frequency: count }));
}

2. Sepet Terkedilme Oranı Azaltma

async function preventCartAbandonment() {
  // 30 dakika önce sepete eklenmiş ama alınmamış
  const abandonedCarts = await db.cart.findMany({
    where: {
      updatedAt: {
        lte: new Date(Date.now() - 30 * 60 * 1000),
        gte: new Date(Date.now() - 60 * 60 * 1000)
      },
      status: 'ACTIVE'
    },
    include: { user: true, items: true }
  });
  
  for (const cart of abandonedCarts) {
    // %10 indirim kuponu gönder
    const coupon = await createCoupon({
      userId: cart.userId,
      discountRate: 10,
      expiresIn: 24 * 60 * 60 * 1000 // 24 saat
    });
    
    await sendEmail({
      to: cart.user.email,
      subject: 'Sepetinizde ürünler bekliyor! %10 İndirim 🎁',
      template: 'abandoned-cart',
      data: {
        items: cart.items,
        couponCode: coupon.code
      }
    });
  }
}

// Her 30 dakikada bir çalıştır
setInterval(preventCartAbandonment, 30 * 60 * 1000);

Kampanya Performans Metrikleri

interface CampaignMetrics {
  impressions: number;
  clicks: number;
  conversions: number;
  revenue: number;
  cost: number;
}

function analyzeCampaignROI(metrics: CampaignMetrics) {
  const ctr = (metrics.clicks / metrics.impressions) * 100;
  const conversionRate = (metrics.conversions / metrics.clicks) * 100;
  const roi = ((metrics.revenue - metrics.cost) / metrics.cost) * 100;
  const cpa = metrics.cost / metrics.conversions;
  
  return {
    clickThroughRate: ctr.toFixed(2) + '%',
    conversionRate: conversionRate.toFixed(2) + '%',
    returnOnInvestment: roi.toFixed(2) + '%',
    costPerAcquisition: '₺' + cpa.toFixed(2),
    recommendation: roi > 200 ? 'Artır' : roi > 100 ? 'Devam' : 'İyileştir'
  };
}

TrendEntegre Kampanya Yönetimi

✅ Otomatik Flash Sale
✅ Dinamik Fiyatlandırma AI
✅ A/B Testing Dashboard
✅ Sepet Analizi
✅ ROI Hesaplama

Ücretsiz Deneyin →

Sonuç

Doğru kampanya stratejileri ile:

  • 📈 Satışları %65 artırabilirsiniz
  • 💰 Sepet ortalamasını %28 yükseltebilirsiniz
  • 🎯 Dönüşüm oranını %8.4'e çıkarabilirsiniz
  • 🚀 ROI'yi %300'e ulaştırabilirsiniz

Anahtar Kelimeler: kampanya yönetimi, fiyat optimizasyonu, dinamik fiyatlandırma, A/B testing, sepet analizi

Etiketler:
Kampanya
Fiyatlandırma
Otomasyon

Eyüp Aktaş

Bu yazı Eyüp Aktaş tarafından yazılmıştır.

İlgili Yazılar

Trendyol'da Kar Nasıl Hesaplanır? 2025 Detaylı Rehber

Trendyol'da Kar Nasıl Hesaplanır? 2025 Detaylı Rehber

Eyüp Aktaş•E-Ticaret Rehberleri
Ürün Listeleme SEO: Trendyol'da İlk Sayfada Görünme Rehberi

Ürün Listeleme SEO: Trendyol'da İlk Sayfada Görünme Rehberi

Eyüp Aktaş•Satış Optimizasyonu
Trendyol Komisyon Oranları ve Kar Hesaplama Rehberi 2025

Trendyol Komisyon Oranları ve Kar Hesaplama Rehberi 2025

Eyüp Aktaş•Karlılık Analizi

Yorumlar (0)

Yorum Yaz

E-posta adresiniz yayınlanmayacaktır.

Henüz yorum yapılmamış. İlk yorumu yapan siz olun!