---
title: Farfetch Clone Business Model
description: 
url: https://miracuves.com/farfetch-clone/business-model
date_modified: 2026-08-24
author: miracuves
language: en_US
---

.mcv-ffb{
    --crimson:#e8344f; --crimson-deep:#a70d2a; --crimson-hot:#d81b46; --crimson-light:#ff8090;
    --amber:#fbbf24; --black:#0a0a0a; --white:#ffffff; --paper:#faf8f8; --ink:#191419; --ink-dim:#6d666d;
    --line:rgba(11,11,16,0.1); --line-light:rgba(255,255,255,0.12);
    --card-bg:rgba(8,3,8,0.82);
    font-family:'Plus Jakarta Sans',Arial,sans-serif; color:var(--ink); background:var(--white); margin:0; padding:0;
  }
  .mcv-ffb *{ box-sizing:border-box; }
  .mcv-ffb h1,.mcv-ffb h2,.mcv-ffb h3{ font-family:'Plus Jakarta Sans',Arial,sans-serif; font-weight:800; margin:0; letter-spacing:-0.02em; line-height:1.12; }
  .mcv-ffb p{ margin:0 0 14px; line-height:1.7; color:var(--ink); }
  .mcv-ffb a{ color:var(--crimson-deep); text-decoration:none; }
  .mcv-ffb .mono{ font-family:'JetBrains Mono',monospace; }
  .mcv-ffb-wrap{ max-width:1180px; margin:0 auto; padding:0 24px; position:relative; z-index:2; }
  .mcv-ffb-bleed{ position:relative; left:50%; right:50%; margin-left:-50vw; margin-right:-50vw; width:100vw; }

  .mcv-seo-ref{ background:#FFF7E0; border:2px dashed #C79A00; padding:18px 22px; font-family:Arial,sans-serif; font-size:13px; color:#4A3B00; max-width:1180px; margin:18px auto; border-radius:8px; }

  .mcv-ffb-crumb{ display:flex; gap:8px; align-items:center; font-family:'JetBrains Mono',monospace; font-size:11.5px; color:rgba(255,255,255,.62); margin-bottom:20px; }
  .mcv-ffb-crumb a{ color:rgba(255,255,255,.62); }
  .mcv-ffb-crumb a:hover{ color:var(--crimson-light); }
  .mcv-ffb-crumb span.sep{ opacity:.5; }
  .mcv-ffb-crumb span.cur{ color:rgba(255,255,255,.75); }

  .mcv-ffb-eyebrow{ display:inline-flex; align-items:center; gap:8px; padding:7px 16px; border-radius:100px; background:rgba(255,255,255,.06); border:1px solid var(--line-light); font-family:'JetBrains Mono',monospace; font-size:11.5px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:var(--crimson-light); margin-bottom:22px; }
  .mcv-ffb-eyebrow .dot{ width:6px; height:6px; border-radius:50%; background:var(--crimson); }

  .mcv-ffb-hero{ background:radial-gradient(ellipse 900px 500px at 85% -10%, rgba(232,52,79,.16), transparent), #0a0a0a; color:#fff; padding:56px 0 150px; position:relative; overflow:hidden; }
  .mcv-ffb-hero .ring{ position:absolute; border:2px solid rgba(232,52,79,.18); border-radius:50%; pointer-events:none; }
  .mcv-ffb-hero .ring1{ width:560px; height:560px; top:-260px; right:-200px; }
  .mcv-ffb-hero .ring2{ width:340px; height:340px; bottom:-200px; right:120px; border-color:rgba(232,52,79,.1); }
  .mcv-ffb-herogrid{ display:grid; grid-template-columns:1.1fr 0.9fr; gap:48px; align-items:center; }
  .mcv-ffb-hero h1{ font-size:clamp(27px,3.9vw,44px); color:#fff; }
  .mcv-ffb-hero h1 em{ font-style:normal; color:#ff8090; }
  .mcv-ffb-hero p.sub{ font-size:16px; color:rgba(255,255,255,.68); max-width:600px; margin:20px 0 30px; }

  .mcv-ffb a.mcv-ffb-btn{ display:inline-flex; align-items:center; gap:8px; border-radius:12px; background:linear-gradient(160deg,#d81b46,#e8344f); color:#fff; font-weight:700; font-size:15px; padding:15px 28px; box-shadow:0 10px 30px rgba(232,52,79,.3); transition:transform .25s cubic-bezier(.2,.8,.2,1), box-shadow .25s; }
  .mcv-ffb a.mcv-ffb-btn:hover{ color:#fff; transform:translateY(-2px); box-shadow:0 14px 36px rgba(232,52,79,.42); text-decoration:none; }
  .mcv-ffb a.mcv-ffb-btn-outline{ display:inline-flex; align-items:center; border:2px solid rgba(255,255,255,.7); color:#fff; border-radius:12px; font-weight:700; font-size:15px; padding:13px 26px; margin-left:12px; transition:all .2s; }
  .mcv-ffb a.mcv-ffb-btn-outline:hover{ background:#fff; color:#191419; text-decoration:none; }

  .mcv-ffb-trust{ display:flex; flex-wrap:wrap; gap:22px; margin-top:34px; padding-top:24px; border-top:1px solid var(--line-light); }
  .mcv-ffb-trust-item{ display:flex; align-items:center; gap:8px; font-size:12.5px; color:rgba(255,255,255,.6); }
  .mcv-ffb-trust-item strong{ font-family:'JetBrains Mono',monospace; color:#fff; font-size:14px; }

  .mcv-ffb-cardstack{ position:relative; height:340px; }
  .mcv-ffb-fincard{ position:absolute; width:300px; height:180px; border-radius:18px; padding:22px; background:linear-gradient(150deg,#1c1418,#0d0709); border:1px solid var(--line-light); box-shadow:0 30px 70px rgba(0,0,0,.5); }
  .mcv-ffb-fincard.c1{ top:0; left:10px; z-index:1; opacity:.5; transform:rotate(-6deg) scale(.92); }
  .mcv-ffb-fincard.c2{ top:30px; left:40px; z-index:2; background:linear-gradient(150deg,#3a0a15,#160408 60%,#0a0a0a); border-color:rgba(232,52,79,.3); box-shadow:0 40px 90px rgba(0,0,0,.55), 0 0 60px -12px rgba(232,52,79,.35); }
  .mcv-ffb-fincard .brand{ font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:rgba(255,255,255,.55); }
  .mcv-ffb-fincard .chip{ width:34px; height:24px; border-radius:5px; background:linear-gradient(135deg,#ff8090,#e8344f); margin:22px 0 18px; }
  .mcv-ffb-fincard .num{ font-family:'JetBrains Mono',monospace; font-size:15px; color:#fff; letter-spacing:.1em; }
  .mcv-ffb-fincard .curr{ position:absolute; bottom:22px; right:22px; font-family:'JetBrains Mono',monospace; font-size:11px; color:#ff8090; }
  .mcv-ffb-float{ position:absolute; background:rgba(8,3,8,0.82); border:1px solid var(--line-light); border-radius:14px; padding:12px 16px; box-shadow:0 16px 40px rgba(0,0,0,.35); z-index:3; }
  .mcv-ffb-float .k2{ font-family:'JetBrains Mono',monospace; font-size:10px; color:#ff8090; text-transform:uppercase; letter-spacing:.08em; margin-bottom:3px; }
  .mcv-ffb-float .v{ font-family:'JetBrains Mono',monospace; font-size:15px; color:#fff; font-weight:700; }
  .mcv-ffb-float-1{ top:-10px; right:0; }
  .mcv-ffb-float-2{ bottom:10px; left:0; }

  .mcv-ffb-statbar{ margin-top:-72px; position:relative; z-index:3; }
  .mcv-ffb-statbar .inner{ background:rgba(8,3,8,0.82); border:1px solid var(--line-light); border-radius:18px; box-shadow:0 24px 60px rgba(0,0,0,.35); padding:32px 20px; display:grid; grid-template-columns:repeat(4,1fr); }
  .mcv-ffb-statbar .stat{ text-align:center; padding:0 12px; border-right:1px solid var(--line-light); }
  .mcv-ffb-statbar .stat:last-child{ border-right:none; }
  .mcv-ffb-statbar .num{ font-family:'JetBrains Mono',monospace; font-weight:700; font-size:22px; color:#ff8090; }
  .mcv-ffb-statbar .lbl{ font-size:11.5px; color:rgba(255,255,255,.62); margin-top:6px; line-height:1.4; }

  .mcv-ffb-section{ padding:100px 0 76px; }
  .mcv-ffb-section.paper{ background:#faf8f8; }
  .mcv-ffb-section.tight{ padding-top:76px; }
  .mcv-ffb-head{ text-align:center; max-width:720px; margin:0 auto 48px; }
  .mcv-ffb-head .kicker{ font-family:'JetBrains Mono',monospace; font-size:12px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:#a70d2a; margin-bottom:12px; }
  .mcv-ffb-head h2{ font-size:clamp(22px,3vw,34px); color:#191419; }
  .mcv-ffb-head p{ color:#6d666d; margin-top:14px; }

  .mcv-ffb-rolegrid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
  .mcv-ffb-rolecard{ background:#fff; border:1px solid var(--line); border-radius:18px; padding:28px 24px; box-shadow:0 6px 18px rgba(0,0,0,.05); transition:transform .3s cubic-bezier(.2,.8,.2,1), box-shadow .3s, border-color .3s; }
  .mcv-ffb-rolecard:hover{ transform:translateY(-6px); box-shadow:0 20px 40px rgba(0,0,0,.09); border-color:#e8344f; }
  .mcv-ffb-roleicon{ width:40px; height:40px; border-radius:10px; background:rgba(232,52,79,.12); border:1px solid rgba(232,52,79,.3); display:flex; align-items:center; justify-content:center; margin-bottom:16px; font-family:'JetBrains Mono',monospace; font-weight:700; font-size:14px; color:#a70d2a; }
  .mcv-ffb-rolecard h3{ font-size:17px; margin-bottom:12px; color:#191419; }
  .mcv-ffb-rolecard ul{ margin:0; padding-left:18px; font-size:13.5px; color:#191419; }
  .mcv-ffb-rolecard li{ margin-bottom:8px; line-height:1.5; }

  .mcv-ffb-tablewrap{ overflow-x:auto; border-radius:16px; box-shadow:0 12px 34px rgba(0,0,0,.07); border:1px solid var(--line); }
  table.mcv-ffb-table{ border-collapse:collapse; width:100%; min-width:680px; background:#fff; font-size:13.5px; }
  table.mcv-ffb-table th{ background:#0a0a0a; color:#ffffff; text-align:left; padding:14px 16px; font-family:'JetBrains Mono',monospace; font-weight:600; font-size:12px; letter-spacing:.04em; text-transform:uppercase; }
  table.mcv-ffb-table td{ padding:14px 16px; border-bottom:1px solid rgba(11,11,16,0.1); vertical-align:top; color:#191419; }
  table.mcv-ffb-table td.hl{ background:rgba(232,52,79,.06); border-top:3px solid #e8344f; font-weight:600; color:#191419; }
  table.mcv-ffb-table th.hl{ background:#e8344f; color:#ffffff; }
  table.mcv-ffb-table tbody tr:hover td{ background:#f4f1f1; color:#191419; }
  table.mcv-ffb-table tbody tr:hover td.hl{ background:rgba(232,52,79,.13); color:#191419; }
  table.mcv-ffb-table tr:last-child td{ border-bottom:none; }
  .mcv-ffb-note{ font-size:12.5px; color:#6d666d; margin-top:12px; }

  .mcv-ffb-callout{ background:linear-gradient(135deg,#2B0710,#4A0F1E); color:#fff; border-radius:20px; padding:40px 44px; }
  .mcv-ffb-callout h2,.mcv-ffb-callout h3{ color:#fff; font-size:22px; margin-bottom:12px; }
  .mcv-ffb-callout p{ color:rgba(255,255,255,.78); font-size:14.5px; margin:0; }

  .mcv-ffb-honest{ background:#fff; border:1px solid var(--line); border-left:4px solid #fbbf24; border-radius:14px; padding:28px 30px; }
  .mcv-ffb-honest h3{ font-size:17px; margin-bottom:14px; color:#191419; }
  .mcv-ffb-honestgrid{ display:grid; grid-template-columns:1fr 1fr; gap:10px 28px; }
  .mcv-ffb-honestgrid div{ font-size:13.5px; color:#191419; line-height:1.55; padding-left:18px; position:relative; }
  .mcv-ffb-honestgrid div::before{ content:'!'; position:absolute; left:0; top:0; font-family:'JetBrains Mono',monospace; font-weight:700; color:#8a6100; }

  .mcv-ffb-cs{ background:#fff; border:1px solid var(--line); border-radius:20px; padding:32px 34px; display:flex; justify-content:space-between; align-items:center; gap:24px; flex-wrap:wrap; box-shadow:0 8px 24px rgba(0,0,0,.05); }
  .mcv-ffb-cs-badge{ display:inline-flex; align-items:center; gap:7px; padding:6px 14px; border-radius:100px; background:rgba(232,52,79,.08); border:1px solid rgba(232,52,79,.25); font-family:'JetBrains Mono',monospace; font-size:11px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:#a70d2a; margin-bottom:12px; }
  .mcv-ffb-cs-badge .dot{ width:6px; height:6px; border-radius:50%; background:#e8344f; }
  .mcv-ffb-cs-body{ flex:1; min-width:260px; }
  .mcv-ffb-cs-body h3{ font-size:16.5px; margin-bottom:6px; color:#191419; }
  .mcv-ffb-cs-body p{ color:#6d666d; font-size:13.5px; margin:0; max-width:460px; }
  .mcv-ffb a.mcv-ffb-cs-link{ font-family:'JetBrains Mono',monospace; font-size:12px; font-weight:700; color:#a70d2a; white-space:nowrap; }

  .mcv-ffb-faqgrid{ display:grid; grid-template-columns:1fr 1fr; gap:0 40px; max-width:1000px; margin:0 auto; }
  .mcv-ffb-faq details{ border-bottom:1px solid var(--line); padding:18px 0; }
  .mcv-ffb-faq summary{ font-family:'Plus Jakarta Sans',Arial,sans-serif; font-weight:700; font-size:15px; color:#191419; cursor:pointer; list-style:none; display:flex; justify-content:space-between; align-items:center; gap:16px; }
  .mcv-ffb-faq summary::-webkit-details-marker{ display:none; }
  .mcv-ffb-faq summary::after{ content:'+'; font-family:'JetBrains Mono',monospace; color:#a70d2a; font-size:20px; font-weight:700; flex:none; }
  .mcv-ffb-faq details[open] summary::after{ content:'\2212'; }
  .mcv-ffb-faq .a{ color:#6d666d; font-size:13.5px; margin-top:10px; line-height:1.65; }

  .mcv-ffb-cta{ background:linear-gradient(120deg,#e8344f,#6e0e1f); color:#fff; padding:64px 0; position:relative; overflow:hidden; }
  .mcv-ffb-cta .ring{ position:absolute; border:2px solid rgba(255,255,255,.14); border-radius:50%; width:360px; height:360px; top:-140px; right:-100px; }
  .mcv-ffb-cta .flex{ display:flex; justify-content:space-between; align-items:center; gap:28px; flex-wrap:wrap; position:relative; z-index:2; }
  .mcv-ffb-cta h2{ color:#fff; font-size:clamp(20px,2.6vw,28px); margin-bottom:8px; }
  .mcv-ffb-cta p{ color:rgba(255,255,255,.82); margin:0; max-width:460px; }
  .mcv-ffb-cta a.mcv-ffb-btn-outline{ border-color:#fff; }
  .mcv-ffb-cta a.mcv-ffb-btn{ background:#fff; box-shadow:0 10px 30px rgba(0,0,0,.2); }
  .mcv-ffb-cta a.mcv-ffb-btn,.mcv-ffb-cta a.mcv-ffb-btn:hover{ color:#a70d2a; }

  .mcv-ffb-explore{ display:flex; flex-wrap:wrap; gap:10px; justify-content:center; }
  .mcv-ffb a.mcv-ffb-pill{ font-family:'JetBrains Mono',monospace; font-size:12.5px; font-weight:600; padding:10px 18px; border-radius:100px; border:1px solid var(--line); color:#191419; background:#fff; transition:all .2s; }
  .mcv-ffb a.mcv-ffb-pill:hover{ border-color:#e8344f; color:#a70d2a; text-decoration:none; }
  .mcv-ffb a.mcv-ffb-pill.cur{ background:#191419; color:#fff; border-color:#191419; }

  .mcv-ffb-finalcta{ background:#0a0a0a; color:#fff; text-align:center; padding:96px 24px 64px; position:relative; overflow:hidden; }
  .mcv-ffb-finalcta .ring{ position:absolute; border:1.5px solid rgba(232,52,79,.16); border-radius:50%; }
  .mcv-ffb-finalcta .ring1{ width:480px; height:480px; top:-220px; left:-160px; }
  .mcv-ffb-finalcta .ring2{ width:300px; height:300px; bottom:-180px; right:-90px; }
  .mcv-ffb-finalcta .card{ background:rgba(8,3,8,0.82); border:1px solid var(--line-light); border-radius:24px; padding:56px 40px; max-width:720px; margin:0 auto; position:relative; z-index:2; }
  .mcv-ffb-finalcta h2{ color:#fff; font-size:clamp(24px,3.2vw,34px); max-width:640px; margin:0 auto 14px; }
  .mcv-ffb-finalcta p.sub{ color:rgba(255,255,255,.7); max-width:520px; margin:0 auto 30px; }
  .mcv-ffb-footerbar{ max-width:1180px; margin:56px auto 0; padding-top:28px; border-top:1px solid var(--line-light); position:relative; z-index:2; }
  .mcv-ffb-byline{ display:flex; flex-wrap:wrap; gap:6px 14px; align-items:center; font-family:'JetBrains Mono',monospace; font-size:11.5px; color:rgba(255,255,255,.55); border-bottom:1px solid rgba(255,255,255,.12); padding-bottom:16px; margin-bottom:12px; }
  .mcv-ffb-byline strong{ color:#fff; font-weight:600; }
  .mcv-ffb-byline .dotsep{ opacity:.4; }
  .mcv-ffb-footermeta{ display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px; font-family:'JetBrains Mono',monospace; font-size:11px; color:rgba(255,255,255,.55); }

  @media (max-width:900px){
    .mcv-ffb-herogrid{ grid-template-columns:1fr; }
    .mcv-ffb-statbar .inner{ grid-template-columns:repeat(2,1fr); gap:18px 0; }
    .mcv-ffb-statbar .stat:nth-child(2){ border-right:none; }
    .mcv-ffb-rolegrid{ grid-template-columns:1fr; }
    .mcv-ffb-honestgrid{ grid-template-columns:1fr; }
    .mcv-ffb-faqgrid{ grid-template-columns:1fr; }
    .mcv-ffb-hero h1{ font-size:27px; }
    .mcv-ffb-cta .flex{ flex-direction:column; align-items:flex-start; }
    .mcv-ffb-cardstack{ height:260px; }
    .mcv-ffb-fincard{ width:250px; height:150px; }
  }
  @media (prefers-reduced-motion: reduce){ .mcv-ffb *{ animation:none !important; transition:none !important; } }
  /* --- components used by cost / company / business-model --- */
  .mcv-ffb-pricecard{ background:linear-gradient(150deg,#3a0a15,#160408 60%,#0a0a0a); border:1px solid rgba(232,52,79,.3); border-radius:22px; padding:34px 32px; box-shadow:0 40px 90px rgba(0,0,0,.55), 0 0 60px -12px rgba(232,52,79,.35); }
  .mcv-ffb-pricecard .plan{ font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:#ff8090; margin-bottom:14px; }
  .mcv-ffb-pricecard .amt{ font-family:'JetBrains Mono',monospace; font-size:44px; font-weight:700; color:#fff; line-height:1; }
  .mcv-ffb-pricecard .per{ font-size:13px; color:rgba(255,255,255,.6); margin-top:8px; }
  .mcv-ffb-pricecard ul{ margin:22px 0 0; padding-left:18px; color:rgba(255,255,255,.78); font-size:13.5px; }
  .mcv-ffb-pricecard li{ margin-bottom:8px; line-height:1.5; }
  .mcv-ffb-drivers{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
  .mcv-ffb-driver{ background:#fff; border:1px solid rgba(11,11,16,0.1); border-radius:18px; padding:26px 24px; box-shadow:0 6px 18px rgba(0,0,0,.05); transition:transform .3s cubic-bezier(.2,.8,.2,1), box-shadow .3s, border-color .3s; }
  .mcv-ffb-driver:hover{ transform:translateY(-6px); box-shadow:0 20px 40px rgba(0,0,0,.09); border-color:#e8344f; }
  .mcv-ffb-driver h3{ font-size:16px; margin-bottom:10px; color:#191419; }
  .mcv-ffb-driver p{ font-size:13.5px; color:#6d666d; margin:0; }
  .mcv-ffb-steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
  .mcv-ffb-step{ background:#fff; border:1px solid rgba(11,11,16,0.1); border-radius:16px; padding:24px 22px; }
  .mcv-ffb-step .n{ font-family:'JetBrains Mono',monospace; font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:#a70d2a; margin-bottom:8px; }
  .mcv-ffb-step h3{ font-size:15.5px; margin-bottom:8px; color:#191419; }
  .mcv-ffb-step p{ font-size:13.5px; color:#6d666d; margin:0; }
  .mcv-ffb-checkgrid{ display:grid; grid-template-columns:1fr 1fr; gap:16px 28px; }
  .mcv-ffb-check{ background:#fff; border:1px solid rgba(11,11,16,0.1); border-radius:14px; padding:20px 22px; }
  .mcv-ffb-check h3{ font-size:15px; margin-bottom:8px; color:#191419; }
  .mcv-ffb-check p{ font-size:13.5px; color:#6d666d; margin:0; }
  .mcv-ffb-flags{ display:grid; grid-template-columns:1fr 1fr; gap:14px 28px; }
  .mcv-ffb-flag{ font-size:13.5px; color:#191419; line-height:1.55; padding-left:22px; position:relative; }
  .mcv-ffb-flag::before{ content:'\2715'; position:absolute; left:0; top:0; font-family:'JetBrains Mono',monospace; font-weight:700; color:#a70d2a; }
  .mcv-ffb-pt{ background:radial-gradient(ellipse 800px 400px at 20% 0%, rgba(232,52,79,.14), transparent), #0a0a0a; color:#fff; padding:92px 0 84px; }
  .mcv-ffb-pt .mcv-ffb-head h2{ color:#fff; }
  .mcv-ffb-pt .mcv-ffb-head p{ color:rgba(255,255,255,.68); }
  .mcv-ffb-pt .mcv-ffb-head .kicker{ color:#ff8090; }
  .mcv-ffb-ptgrid{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
  .mcv-ffb-ptcard{ background:rgba(8,3,8,0.82); border:1px solid rgba(255,255,255,0.12); border-radius:18px; padding:26px 24px; }
  .mcv-ffb-ptcard h3{ font-size:15.5px; color:#fff; margin-bottom:10px; }
  .mcv-ffb-ptcard p{ font-size:13.5px; color:rgba(255,255,255,.72); margin:0; }
  .mcv-ffb-ptcard .tag{ display:inline-block; font-family:'JetBrains Mono',monospace; font-size:10px; letter-spacing:.1em; text-transform:uppercase; color:#ff8090; border:1px solid rgba(232,52,79,.35); border-radius:100px; padding:3px 10px; margin-bottom:12px; }
  .mcv-ffb-csbox{ background:#fff; border:1px solid rgba(11,11,16,0.1); border-radius:22px; padding:40px 42px; box-shadow:0 12px 34px rgba(0,0,0,.06); }
  .mcv-ffb-csmeta{ display:flex; flex-wrap:wrap; gap:26px; margin:22px 0 26px; padding:20px 0; border-top:1px solid rgba(11,11,16,0.1); border-bottom:1px solid rgba(11,11,16,0.1); }
  .mcv-ffb-csmeta div{ font-size:13px; color:#6d666d; }
  .mcv-ffb-csmeta strong{ display:block; font-family:'JetBrains Mono',monospace; font-size:18px; color:#191419; margin-bottom:2px; }
  .mcv-ffb-cscols{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
  .mcv-ffb-cscols h4{ font-size:13px; font-family:'JetBrains Mono',monospace; letter-spacing:.08em; text-transform:uppercase; color:#a70d2a; margin:0 0 10px; }
  .mcv-ffb-cscols ul{ margin:0; padding-left:18px; font-size:13.5px; color:#191419; }
  .mcv-ffb-cscols li{ margin-bottom:8px; line-height:1.5; }
  .mcv-ffb-quote{ margin-top:28px; padding:24px 26px; background:#faf8f8; border-left:3px solid #e8344f; border-radius:0 12px 12px 0; }
  .mcv-ffb-quote p{ font-size:15px; font-style:italic; color:#191419; margin:0 0 10px; }
  .mcv-ffb-quote .who{ font-family:'JetBrains Mono',monospace; font-size:12px; color:#6d666d; font-style:normal; }
  .mcv-ffb-revgrid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
  .mcv-ffb-revcard{ background:#fff; border:1px solid rgba(11,11,16,0.1); border-radius:18px; padding:28px 24px; box-shadow:0 6px 18px rgba(0,0,0,.05); transition:transform .3s cubic-bezier(.2,.8,.2,1), box-shadow .3s, border-color .3s; }
  .mcv-ffb-revcard:hover{ transform:translateY(-6px); box-shadow:0 20px 40px rgba(0,0,0,.09); border-color:#e8344f; }
  .mcv-ffb-revcard .n{ font-family:'JetBrains Mono',monospace; font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:#a70d2a; margin-bottom:10px; }
  .mcv-ffb-revcard h3{ font-size:16.5px; margin-bottom:10px; color:#191419; }
  .mcv-ffb-revcard p{ font-size:13.5px; color:#6d666d; margin:0; }
  .mcv-ffb-revcard .core{ display:inline-block; margin-top:14px; font-family:'JetBrains Mono',monospace; font-size:10px; letter-spacing:.1em; text-transform:uppercase; color:#a70d2a; background:rgba(232,52,79,.08); border:1px solid rgba(232,52,79,.25); border-radius:100px; padding:3px 10px; }
  .mcv-ffb-disclose{ background:#faf8f8; border:1px dashed rgba(11,11,16,0.1); border-radius:14px; padding:26px 28px; max-width:860px; margin:0 auto; }
  .mcv-ffb-disclose h3{ font-size:16px; margin-bottom:10px; color:#191419; }
  .mcv-ffb-disclose p{ font-size:13.5px; color:#6d666d; margin:0 0 10px; }
  .mcv-ffb-disclose p:last-child{ margin-bottom:0; }
  .mcv-ffb-callout .figs{ display:flex; flex-wrap:wrap; gap:32px; margin-top:22px; padding-top:20px; border-top:1px solid rgba(255,255,255,0.12); }
  .mcv-ffb-callout .figs div{ font-size:12.5px; color:rgba(255,255,255,.65); }
  .mcv-ffb-callout .figs strong{ display:block; font-family:'JetBrains Mono',monospace; font-size:20px; color:#fff; margin-bottom:3px; }
  @media (max-width:900px){
    .mcv-ffb-drivers,.mcv-ffb-steps,.mcv-ffb-checkgrid,.mcv-ffb-flags,.mcv-ffb-ptgrid,.mcv-ffb-cscols,.mcv-ffb-revgrid{ grid-template-columns:1fr; }
    .mcv-ffb-csbox{ padding:28px 24px; }
  }
  /* ===== components ported from the shipped reference bundle (instagram-clone) ===== */
  .mcv-ffb-aside{ border-left:3px solid #e8344f; background:#faf8f8; border-radius:0 16px 16px 0; padding:32px 36px; }
  .mcv-ffb-aside h3{ font-size:17px; margin-bottom:14px; color:#191419; }
  .mcv-ffb-aside ul{ margin:0; padding:0; list-style:none; display:grid; grid-template-columns:1fr 1fr; gap:16px 32px; }
  .mcv-ffb-aside li{ padding-left:18px; position:relative; font-size:14px; color:#191419; line-height:1.6; }
  .mcv-ffb-aside li::before{ content:''; position:absolute; left:0; top:7px; width:7px; height:7px; background:#e8344f; transform:rotate(45deg); }
  .mcv-ffb-aside li span{ color:#6d666d; display:block; font-size:12.5px; margin-top:2px; }
  .mcv-ffb-flowrow{ display:grid; grid-template-columns:64px 1fr; gap:22px; padding:28px 0; border-bottom:1px solid rgba(11,11,16,0.1); align-items:start; }
  .mcv-ffb-flowrow:last-child{ border-bottom:none; }
  .mcv-ffb-flowrow h3{ font-size:18px; margin-bottom:8px; color:#191419; }
  .mcv-ffb-flowrow p{ color:#6d666d; font-size:14.5px; margin:0; max-width:760px; }
  .mcv-ffb-flownum{ width:56px; height:56px; border-radius:50%; border:1.5px solid rgba(11,11,16,0.1); display:flex; align-items:center; justify-content:center; font-family:'JetBrains Mono',monospace; font-weight:700; color:#a70d2a; font-size:16px; }
  .mcv-ffb-icongrid{ display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }
  .mcv-ffb-iconitem{ background:#fff; border:1px solid rgba(11,11,16,0.1); border-radius:14px; padding:22px 24px; display:flex; gap:14px; align-items:flex-start; box-shadow:0 6px 18px rgba(0,0,0,.05); }
  .mcv-ffb-iconitem h3{ font-size:15px; margin-bottom:6px; color:#191419; }
  .mcv-ffb-iconitem p{ font-size:13px; color:#6d666d; margin:0; }
  .mcv-ffb-icondot{ width:34px; height:34px; border-radius:10px; background:rgba(232,52,79,.12); border:1px solid rgba(232,52,79,.3); flex:none; display:flex; align-items:center; justify-content:center; font-family:'JetBrains Mono',monospace; font-weight:700; font-size:14px; color:#a70d2a; }
  .mcv-ffb-steprow{ display:flex; gap:24px; padding:22px 0; border-bottom:1px solid rgba(11,11,16,0.1); }
  .mcv-ffb-steprow:last-child{ border-bottom:none; }
  .mcv-ffb-step-num{ font-family:'JetBrains Mono',monospace; font-weight:700; font-size:15px; color:#a70d2a; flex:none; width:90px; padding-top:2px; }
  .mcv-ffb-step-body h3{ font-size:17px; color:#191419; margin-bottom:6px; }
  .mcv-ffb-step-body p{ font-size:14.5px; color:#6d666d; margin:0; }
  .mcv-ffb-trustband{ background:#0a0a0a; color:#fff; padding:96px 0; position:relative; overflow:hidden; }
  .mcv-ffb-trustband .ring{ position:absolute; border:1.5px solid rgba(232,52,79,.16); border-radius:50%; width:420px; height:420px; top:-160px; left:-140px; }
  .mcv-ffb-trustband .head{ text-align:center; max-width:720px; margin:0 auto 44px; position:relative; z-index:2; }
  .mcv-ffb-trustband .head .kicker{ font-family:'JetBrains Mono',monospace; font-size:12px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:#ff8090; margin-bottom:12px; }
  .mcv-ffb-trustband .head h2{ color:#fff; font-size:clamp(22px,3vw,34px); }
  .mcv-ffb-trustband .head p{ color:rgba(255,255,255,.68); margin-top:14px; }
  /* the band markup uses the prefixed head class, so scope the light colours to it explicitly -
     without this the h2 falls through to .mcv-ffb-head h2 (#191419) and vanishes on the black band */
  .mcv-ffb-trustband .mcv-ffb-head h2{ color:#ffffff; font-size:clamp(22px,3vw,34px); }
  .mcv-ffb-trustband .mcv-ffb-head p{ color:rgba(255,255,255,0.68); }
  .mcv-ffb-trustband .mcv-ffb-head .kicker{ color:#ff8090; }
.mcv-ffb-trustband .mcv-ffb-note{ color:rgba(255,255,255,0.68); }
.mcv-ffb-pt .mcv-ffb-note{ color:rgba(255,255,255,0.68); }
  .mcv-ffb-trustgrid{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; position:relative; z-index:2; }
  .mcv-ffb-trustcard{ background:rgba(8,3,8,0.82); border:1px solid rgba(255,255,255,0.12); border-radius:16px; padding:26px 22px; }
  .mcv-ffb-trustcard h3{ color:#fff; font-size:15px; margin-bottom:8px; }
  .mcv-ffb-trustcard p{ color:rgba(255,255,255,.68); font-size:13px; margin:0; line-height:1.55; }
  .mcv-ffb-trusticon{ width:38px; height:38px; border-radius:10px; background:rgba(232,52,79,.16); border:1px solid rgba(232,52,79,.4); display:flex; align-items:center; justify-content:center; margin-bottom:14px; }
  .mcv-ffb-scorecard{ background:rgba(8,3,8,0.82); border:1px solid rgba(255,255,255,0.12); border-radius:20px; padding:28px 26px; }
  .mcv-ffb-scorecard .k{ font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:#ff8090; margin-bottom:16px; }
  .mcv-ffb-scorerow{ display:flex; justify-content:space-between; align-items:center; padding:10px 0; border-bottom:1px solid rgba(255,255,255,0.12); }
  .mcv-ffb-scorerow:last-child{ border-bottom:none; }
  .mcv-ffb-scorerow .lbl2{ font-size:12.5px; color:rgba(255,255,255,.75); }
  .mcv-ffb-scorerow .val{ font-family:'JetBrains Mono',monospace; font-size:13px; font-weight:700; color:#fff; }
  .mcv-ffb-scorerow .val.good{ color:#ff8090; }
  /* scorecard is a DARK card sitting in a light section. Rows authored as
     **label**text inherit var(--ink) and vanish (1.13:1).
     Give them light ink and stack them; .lbl2/.val two-column rows are untouched. */
  .mcv-ffb-scorerow{ flex-wrap:wrap; }
  .mcv-ffb-scorecard > .mcv-ffb-scorerow > strong{ flex:1 0 100%; color:#ffffff; font-size:14.5px; margin-bottom:4px; }
  .mcv-ffb-scorecard > .mcv-ffb-scorerow > span{ flex:1 0 100%; color:rgba(255,255,255,0.78); font-size:13px; line-height:1.62; }
  .mcv-ffb-cs-top{ display:flex; justify-content:space-between; align-items:flex-start; gap:24px; flex-wrap:wrap; margin-bottom:28px; }
  .mcv-ffb-cs-top p{ color:#6d666d; font-size:14.5px; max-width:480px; margin:0; }
  .mcv-ffb-cs-meta{ text-align:right; font-size:13.5px; }
  .mcv-ffb-cs-meta strong{ display:block; color:#191419; font-size:14.5px; }
  .mcv-ffb-cs-meta .lbl{ font-family:'JetBrains Mono',monospace; font-size:10.5px; text-transform:uppercase; letter-spacing:.08em; color:#6d666d; margin:2px 0 12px; }
  .mcv-ffb-cs-stats{ display:grid; grid-template-columns:repeat(3,1fr); border:1px solid rgba(11,11,16,0.1); border-radius:16px; margin-bottom:24px; overflow:hidden; }
  .mcv-ffb-cs-stat{ text-align:center; padding:22px 12px; border-right:1px solid rgba(11,11,16,0.1); }
  .mcv-ffb-cs-stat:last-child{ border-right:none; }
  .mcv-ffb-cs-stat .v{ font-family:'JetBrains Mono',monospace; font-weight:700; font-size:26px; color:#a70d2a; }
  .mcv-ffb-cs-stat .l{ font-size:12.5px; color:#6d666d; margin-top:4px; }
  .mcv-ffb-cs-grid{ display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:16px; }
  .mcv-ffb-cs-box{ background:#faf8f8; border-radius:14px; padding:22px 24px; }
  .mcv-ffb-cs-box .h{ font-family:'JetBrains Mono',monospace; font-size:11px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:#6d666d; margin-bottom:12px; }
  .mcv-ffb-cs-box ul{ margin:0; padding:0; list-style:none; display:grid; gap:8px; }
  .mcv-ffb-cs-box li{ padding-left:16px; position:relative; font-size:13.5px; color:#191419; line-height:1.55; }
  .mcv-ffb-cs-box li::before{ content:''; position:absolute; left:0; top:7px; width:6px; height:6px; background:#e8344f; transform:rotate(45deg); }
  .mcv-ffb-cs-quote{ border-left:3px solid #e8344f; background:#faf8f8; border-radius:0 14px 14px 0; padding:22px 26px; margin-top:16px; display:flex; gap:16px; align-items:flex-start; }
  .mcv-ffb-cs-quote p{ font-style:italic; font-size:15px; color:#191419; margin:0 0 10px; }
  .mcv-ffb-cs-avatar{ width:38px; height:38px; border-radius:50%; background:#a70d2a; color:#fff; display:flex; align-items:center; justify-content:center; font-family:'JetBrains Mono',monospace; font-weight:700; font-size:13px; flex:none; }
  .mcv-ffb-cs-who strong{ display:block; font-size:13.5px; color:#191419; }
  .mcv-ffb-cs-who span{ font-size:12.5px; color:#6d666d; }
  .mcv-ffb-cs-foot{ margin-top:20px; padding-top:16px; border-top:1px solid rgba(11,11,16,0.1); font-size:12.5px; color:#6d666d; }
  .mcv-ffb-mockwrap{ position:relative; }
  .mcv-ffb-chartcard{ background:rgba(8,3,8,0.82); border:1px solid rgba(255,255,255,0.12); border-radius:20px; padding:28px 26px; position:relative; }
  .mcv-ffb-chartcard .k{ font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:#ff8090; margin-bottom:18px; }
  .mcv-ffb-chartcard .mcv-ffb-barrow{ display:flex; align-items:center; gap:14px; height:auto; margin:0 0 14px; }
  .mcv-ffb-chartcard .mcv-ffb-barrow .l{ flex:0 0 140px; font-size:12.5px; line-height:1.35; color:rgba(255,255,255,.78); }
  .mcv-ffb-chartcard .mcv-ffb-barrow>.bar{ flex:1; height:8px; border-radius:999px; background:rgba(255,255,255,.10); overflow:hidden; }
  .mcv-ffb-chartcard .mcv-ffb-barrow>.bar>.mcv-ffb-barcol{ height:8px; border-radius:999px; background:linear-gradient(90deg,#ff8090,#d81b46); }
  .mcv-ffb-chartcard .note{ margin-top:18px; padding-top:14px; border-top:1px solid rgba(255,255,255,0.12); font-size:11.5px; line-height:1.5; color:rgba(255,255,255,.62); }
  .mcv-ffb-seggrid{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
  .mcv-ffb-segcard{ background:#fff; border:1px solid rgba(11,11,16,0.1); border-radius:16px; padding:26px 22px; box-shadow:0 6px 18px rgba(0,0,0,.05); transition:transform .3s cubic-bezier(.2,.8,.2,1), box-shadow .3s, border-color .3s; }
  .mcv-ffb-segcard:hover{ transform:translateY(-6px); box-shadow:0 20px 40px rgba(0,0,0,.09); border-color:#e8344f; }
  .mcv-ffb-segcard h3{ color:#191419; font-size:15.5px; margin-bottom:8px; }
  .mcv-ffb-segcard p{ color:#6d666d; font-size:13px; margin:0; line-height:1.55; }
  .mcv-ffb-segicon{ width:38px; height:38px; border-radius:10px; background:rgba(232,52,79,.12); border:1px solid rgba(232,52,79,.3); display:flex; align-items:center; justify-content:center; margin-bottom:14px; font-family:'JetBrains Mono',monospace; font-weight:700; font-size:14px; color:#a70d2a; transition:background .3s; }
  .mcv-ffb-modelgrid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
  .mcv-ffb-modelcard{ position:relative; background:#fff; border:1px solid rgba(11,11,16,0.1); border-radius:18px; padding:26px 24px; box-shadow:0 6px 18px rgba(0,0,0,.05); transition:transform .3s cubic-bezier(.2,.8,.2,1), box-shadow .3s, border-color .3s; overflow:hidden; }
  .mcv-ffb-modelcard:hover{ transform:translateY(-6px); box-shadow:0 20px 40px rgba(0,0,0,.09); border-color:#e8344f; }
  .mcv-ffb-modelcard .ghost{ position:absolute; top:-4px; right:6px; font-family:'JetBrains Mono',monospace; font-weight:700; font-size:64px; color:#000; opacity:.045; line-height:1; }
  .mcv-ffb-modelcard:hover .ghost{ color:#e8344f; opacity:.09; }
  .mcv-ffb-modelcard .stage{ font-family:'JetBrains Mono',monospace; font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:#a70d2a; margin-bottom:10px; position:relative; }
  .mcv-ffb-modelcard h3{ font-size:16.5px; margin-bottom:8px; position:relative; color:#191419; }
  .mcv-ffb-modelcard p{ font-size:13.5px; color:#6d666d; margin:0; line-height:1.55; position:relative; }
  .mcv-ffb-streamlist{ display:flex; flex-direction:column; gap:9px; }
  .mcv-ffb-streamrow{ display:flex; align-items:center; gap:12px; padding:9px 12px; border:1px solid rgba(255,255,255,0.12); border-radius:10px; background:rgba(255,255,255,.03); }
  .mcv-ffb-streamrow .n{ font-family:'JetBrains Mono',monospace; font-size:11px; font-weight:700; color:#ff8090; }
  .mcv-ffb-streamrow .s{ font-size:13px; color:#fff; font-weight:600; }
  @media (max-width:900px){
    .mcv-ffb-aside ul{ grid-template-columns:1fr; }
    .mcv-ffb-flowrow{ grid-template-columns:48px 1fr; gap:16px; }
    .mcv-ffb-flownum{ width:44px; height:44px; font-size:14px; }
    .mcv-ffb-icongrid,.mcv-ffb-cs-grid,.mcv-ffb-modelgrid{ grid-template-columns:1fr; }
    .mcv-ffb-trustgrid,.mcv-ffb-seggrid{ grid-template-columns:1fr 1fr; }
    .mcv-ffb-cs-stats{ grid-template-columns:1fr; }
    .mcv-ffb-cs-stat{ border-right:none; border-bottom:1px solid rgba(11,11,16,0.1); }
    .mcv-ffb-cs-stat:last-child{ border-bottom:none; }
    .mcv-ffb-cs-top,.mcv-ffb-steprow{ flex-direction:column; }
    .mcv-ffb-cs-meta{ text-align:left; }
    .mcv-ffb-chartcard .mcv-ffb-barrow{ gap:10px; }
    .mcv-ffb-chartcard .mcv-ffb-barrow .l{ flex:0 0 104px; font-size:11.5px; }
  }
* + .mcv-ffb-callout{ margin-top:22px; }
.mcv-ffb-cta .mcv-ffb-byline,.mcv-ffb-cta .mcv-ffb-footerbar{ color:#ffffff; }
.mcv-ffb-cta .mcv-ffb-byline .dotsep{ opacity:.65; }
.mcv-ffb-trustband .kicker,.mcv-ffb-pt .kicker{ color:var(--crimson-light); }
.mcv-ffb-cta .kicker{ color:#ffffff; }
.mcv-ffb-cta .mcv-ffb-footermeta{ color:#ffffff; }
@media (max-width:560px){ .mcv-ffb-trustgrid,.mcv-ffb-seggrid{ grid-template-columns:1fr; } }

.mcv-ffb-seggrid{ grid-template-columns:repeat(3,1fr); }
@media (max-width:900px){ .mcv-ffb-seggrid{ grid-template-columns:1fr 1fr; } }
@media (max-width:560px){ .mcv-ffb-seggrid{ grid-template-columns:1fr; } }

    
    
      
        
          
            [Home](/)/[Farfetch Clone](/farfetch-clone/)/Business Model
          
          Farfetch Clone · Business Model
          
# Farfetch Clone Business Model: Six Lines, One Settlement Ledger

          
A luxury marketplace that only takes commission is leaving most of its margin on the table, and it is also the most fragile shape in the category. Six revenue lines run against one settlement ledger here, and they combine: the same boutique can pay commission on a sale, buy retail media, sit on a premium tier and share the cost of a promotion, all resolving into one statement it can actually read.

          [Design My Revenue Model →](https://miracuves.com/schedule-consultation/)[See Pricing](/farfetch-clone/development-cost/)
          
            **6** revenue lines, one ledger
            **Per category** and per tier
            **0%** taken by Miracuves
          
        
        
          Revenue shareNone, ever
          
            Six Lines Against One Ledger
            
              01Marketplace commission
              02Retail media, operator side
              03Retail media, seller side
              04Premium seller tiers
              05Promotional cost share
              06Loyalty and concierge
            
          
        
      
    
  

  
    
      
        6Revenue Lines Available
        70Tables Behind the Ledger
        0%Taken by Miracuves
        $3,399One-Time, Fixed
      
    
  

  
    
      
        Premise
        
## Why Commission Alone Is Fragile in Luxury

        
Six observations that decide whether a luxury marketplace holds its margin, in the order they start to matter.

      
      
        01
### Your best boutiques negotiate first

The moment a boutique becomes a meaningful share of your volume, it asks for a better rate, and a flat platform-wide percentage gives you nothing to trade with. Commission that varies by category and by seller tier is what lets you say yes on one axis while holding the line on another.

        02
### Luxury basket sizes cut both ways

A high average order value makes a small percentage meaningful, and it also makes every returned item expensive. A model built only on commission absorbs the full cost of returns without any line that is insulated from them.

        03
### Attention is inventory you already own

Placement on a luxury storefront has real value to a boutique long before you have the traffic of a large marketplace. Retail media on both sides turns homepage and category placement into a line that does not depend on the order completing.

        04
### Sellers will pay for certainty, not just reach

A premium tier that guarantees faster payout cycles, better analytics or priority QA is worth money to a boutique running on working capital. That is a subscription line with predictable revenue against a commission line that is not.

        05
### Discounts should not come only from you

A promotion funded entirely by the operator is a margin transfer. Promotional cost share makes the discount a negotiation, which is how large marketplaces run sale events without destroying their own economics.

        06
### The lines resolve into one statement

Commission, media spend, tier fees and promotional share all land in the same settlement ledger, so a boutique sees one figure and can check how it was reached. A marketplace that cannot explain a statement loses sellers regardless of how good its rates are.

      
      
There is no revenue projection on this page and no market sizing. Both would mean inventing assumptions about your category mix and basket size and presenting them back to you as findings.

    
  

  
    
      
        The Lines
        
## Six Revenue Lines, One Ledger

        
Every one of these ships in the base build. What each costs and how it is weighted is yours to set.

      
      
        
### Marketplace commission

Rules applied by category and by seller tier rather than one flat percentage, computed against each child order and recorded in the settlement ledger with the reasoning behind the figure, not only the total.

        
### Retail media, operator side

Placement you sell as the operator: homepage rails, category positions and featured slots. It monetizes attention you already have rather than waiting for an order to complete, which makes it the most resilient line in a slow month.

        
### Retail media, seller side

Self-service campaigns a boutique runs from its own hub, with its own budget and its own reporting. Self-service is what makes this line scale, because it does not require your team to sell every placement.

        
### Premium seller tiers

A subscription a boutique pays for standing rather than for a transaction: better analytics, priority in QA, improved payout terms or a higher media allowance. Predictable revenue that is not correlated with order volume.

        
### Promotional cost share

Sale events where the discount is split between operator and seller by agreement rather than absorbed entirely by you. This is what makes a category-wide promotion something you can run more than once a year.

        
### Loyalty and concierge

Loyalty tiers on the shopper side and a concierge service that can be positioned as a paid or a retention product depending on your market. In luxury, service is a legitimate line rather than only a cost.

      
      
Most operators launch on commission plus one media line, then add seller tiers once there are boutiques who would notice the benefit.

    
  

  
    
      
        Reference
        
## How the Category Itself Makes Money

        
The reference model for luxury multi-brand marketplaces, and which parts of it this platform reproduces.

      
      
        
| Line | What it sells | In this platform |
| --- | --- | --- |
| Marketplace commission | A share of each sale made through the platform | Rules by category and seller tier, computed per child order |
| Retail media | Placement and promotion, sold to brands and sellers | Operator-sold placement plus self-service seller campaigns |
| Seller services | Subscriptions and tiers sold to sellers for standing | Premium seller tiers with operator-set benefits |
| Owned inventory | Buying stock and selling it at full margin | Not the model here; this platform is marketplace-first |
| Fulfilment services | Logistics and warehousing sold back to sellers | Not a base module; the platform records the order, not the warehouse |
| Loyalty and service | Membership, concierge and retention products | Loyalty tiers and concierge in the base build |

      
      
The two rows marked as not included are deliberate. Owned inventory and physical fulfilment are capital and operations businesses, not software ones, and pretending the platform provides them would be misleading.

    
  

  
    
      
        Sequencing
        
## Monetization Approaches, Ranked by Growth Stage

        
Which line is realistic at which point, and what has to be true before it works.

      
      
        
| Stage | The line that works here | What has to be true first |
| --- | --- | --- |
| Pre-launch | Nothing | You are still signing boutiques, and a rate card without supply is a document nobody reads |
| First boutiques | Commission, deliberately modest | Enough catalog that a shopper can find more than one thing worth buying |
| Early traction | Operator-sold placement | Traffic on category pages that a boutique would notice being featured on |
| Growing supply | Premium seller tiers | Enough boutiques that standing relative to others is worth paying for |
| Established | Self-service seller media | Sellers asking for placement often enough that manual selling does not scale |
| Mature | Promotional cost share and loyalty | Enough leverage to negotiate discount funding, and repeat shoppers worth retaining |

      
      
The first two rows are the ones most operators get wrong, usually by setting commission too high before there is any reason for a boutique to accept it.

    
  

  
    
      
        Build vs Buy
        
## What the Alternative Actually Costs

        
Before any of the six lines earns anything, the platform has to exist. Here is what that costs each way, in the terms the documentation actually states.

      
      
        **Build it from scratch**An eighteen to thirty month programme with a senior team, and the multi-seller settlement work - parent and child orders, commission by category and tier, maker-checker payouts - is the part most likely to be specified late and rebuilt twice.
        **Assemble from separate products**A storefront product, a marketplace plugin and a payouts product become three subscriptions, three security reviews, and a settlement gap that nobody's roadmap owns. The gap is where your reconciliation lives.
        **Rent a hosted marketplace**Fast, and permanently priced as a share of the thing you worked hardest for. It also usually carries a per-seller fee, which turns boutique growth into a cost line rather than a margin one.
        **This platform**$3,399 one-time, six working days, the full monorepo of twenty-nine services in your repository with no runtime licence and no per-seat fee. We take no commission and no share of media revenue, so all six lines are yours in full.
      
      
        
### What we do not publish, and why

        
There is no revenue projection on this page and no market sizing. Both would require inventing assumptions about your category mix, your average order value, your return rate, your boutique count and your media sell-through, and then presenting them back to you as a finding. The levers are all here and all operator-set; bring your own expected numbers and we will model them with you rather than for you.

        
          **6**Revenue lines available
          **0%**Taken by Miracuves
          **18-30**Months, the alternative
          **$3,399**One-time, fixed
        
      
      
The distinction that matters commercially: a revenue share and a per-seller fee are both charged on your best months forever, and a one-time price is not.

    
  

  
    
      
        Order of Operations
        
## Which Lever to Switch On First

        
A practical sequence for the first year, with the signal that tells you the next line is ready.

      
      
        
| Order | Switch on | Move to the next when |
| --- | --- | --- |
| First | Commission only, set low | Boutiques renew their listings without being chased and the catalog stops thinning |
| Second | Category and tier rules | A large boutique asks for a better rate and you need something to trade |
| Third | Operator-sold placement | Sellers ask to be featured before you offer it to them |
| Fourth | Premium seller tiers | There are enough boutiques that being ranked above others has value |
| Fifth | Self-service seller media | Manual placement sales take more of your team's time than they return |
| Sixth | Promotional cost share and loyalty | You have the leverage to negotiate discount funding and the repeat shoppers to retain |

      
      
Each of these is a configuration change in the admin command centre rather than a release, which is what makes running the sequence in this order practical.

    
  

  
    
      
        Shapes
        
## Three Ways Operators Run This Platform

        
The same six lines, weighted three very different ways. Most operators are a blend of two.

      
      
        
          A
          
### The regional luxury marketplace

          
Boutiques in one country or region, served from one deployment with local currency, duty and locale handled properly. Commission carries the platform early, and premium tiers arrive once there are enough boutiques for standing to matter.

          
- Commission set per category, negotiated per tier
- Duty and tax correctness is a competitive advantage, not overhead
- Placement sold manually long before self-service is worth building

        
        
          B
          
### The resale and consignment platform

          
Pre-owned luxury, where authenticity is the entire proposition. The catalog QA queue and the provenance fields are the product, and buyers pay a premium for the confidence the queue produces.

          
- Authenticity status and condition drive the browse experience
- Commission is higher and defensible because verification has real cost
- Concierge and loyalty matter more than media revenue

        
        
          C
          
### The retail group platform

          
An existing retail group putting its own houses and third-party brands on one platform. Revenue is partly internal margin and partly commission from external sellers, with retail media sold against a known audience.

          
- Seller tiers used to separate owned houses from third parties
- Retail media viable early because the audience already exists
- No per-seller fee means adding houses costs nothing extra

        
      
      
The third shape depends on there being no per-seat or per-seller fee. A platform that charges per seller makes consolidating a retail group more expensive the better it works.

    
  

  
    
      
        Mistakes
        
## Common Luxury Marketplace Monetization Mistakes

      
      
        
### Five that are expensive to undo

        
**Setting commission high before there is demand.** A boutique with no sales through you will not accept a premium rate, and renegotiating upward later is far harder than starting low and earning the increase.

        
**Running one flat rate across every category.** Margins differ enormously between categories in luxury. A single rate is simultaneously too high for some sellers and leaving money on the table with others.

        
**Funding every promotion yourself.** Sale events paid entirely out of operator margin look like growth until you measure contribution. Cost share makes the discount a conversation instead of a subsidy.

        
**Treating catalog QA as a cost to minimise.** One counterfeit that reaches a shopper costs more in trust than the queue costs to staff for a year, and in luxury trust is the only reason a shopper chooses a marketplace over the brand's own site.

        
**Launching media before there is traffic.** Selling placement on a storefront nobody visits burns credibility with the sellers you most need, and they will remember it when the traffic does arrive.

      
      
Each of these is a configuration decision here rather than a code change, which is what makes correcting them realistic once you see the data.

    
  

  
    
      
        
          Development Company
          
### See the deployment behind the model

          
A regional luxury marketplace that launched on this platform with settlement live from day one, plus the six-step process and the gaps we name before you buy - on the Development Company page.

        
        [See the case study →](/farfetch-clone/development-company/#case-study)
      
    
  

  
    
      
        FAQ
        
## Frequently Asked Questions

      
      
        
          
            Can commission really differ by category and seller tier?
            Yes, and it is the single most useful lever in the model. Rules apply per category and per seller tier, so a premium boutique in one category and a newly onboarded seller in another settle at different rates on the same order. The ledger records how each figure was reached, which is what lets you defend a rate in a negotiation rather than just assert it.
          
          
            Do you take a percentage of commission or media revenue?
            No, and there is no runtime licence or per-seller fee either. Marketplace commission, retail media on both sides, premium seller tiers, promotional cost share and loyalty revenue are all yours in full. Adding your hundredth boutique costs you nothing extra from us, which is what keeps seller growth a margin story.
          
          
            Is retail media realistic for a new marketplace?
            Operator-sold placement is, earlier than most people expect, because a boutique will pay for a homepage rail on a storefront that reaches its target customer even at modest traffic. Self-service seller campaigns come later, once placement demand is high enough that selling it manually costs your team more time than it returns.
          
        
        
          
            What is promotional cost share?
            A sale discount split between operator and seller by agreement rather than absorbed entirely by you. It is what allows a category-wide promotion to run more than once a year without destroying contribution margin, and it is modelled in the settlement ledger so the split appears on the boutique's statement rather than being reconciled by email.
          
          
            Does the platform handle owned inventory or warehousing?
            No, and that is stated deliberately. This is a marketplace-first platform: it models the order, the commission and the settlement. Buying stock and running a warehouse are capital and operations businesses rather than software ones, and claiming the platform provides them would be misleading.
          
          
            How do boutiques see what they are owed?
            Through statements generated against their child orders in the seller hub, with payout requests raised from the same place. All six revenue lines resolve into the same settlement ledger, so one figure explains itself. On the deployment we delivered, the operator's head of retail described settlement governance as the thing that won the boutiques over.
          
        
      
    
  

  
    
    
      
        
## Model it against your own category mix

Bring your expected boutique count, your categories and your average order value. We will map the six lines against them rather than hand you a projection we invented.

        [Design My Revenue Model](https://miracuves.com/schedule-consultation/)[Full Overview](/farfetch-clone/)
      
    
  

  
    
      
        Explore
        
## Explore the Farfetch Clone

      
      
        [Overview](/farfetch-clone/)
        [Features](/farfetch-clone/features/)
        [Development Cost](/farfetch-clone/development-cost/)
        [Development Company](/farfetch-clone/development-company/)
        [Business Model](/farfetch-clone/business-model/)
      
    
  

  
    
    
      
        
## Six revenue lines. One ledger. No cut taken.

        
Commission by category and tier, retail media on both sides, premium seller tiers, promotional cost share and loyalty, all resolving into one settlement ledger on a monorepo you own outright.

        [Talk to Us →](https://miracuves.com/schedule-consultation/)
      
      
        
          **Written by the Miracuves Product Team**·
          Reviewed for accuracy·
          Last updated **August 24, 2026**
        
        
          Miracuves · Farfetch Clone Solution
          Revenue lines cross-verified against the live hub, 2026-08-24
