# Mobil Oyun Vergi Ön İnceleme Formu: App Store, Google Play, AdMob, Steam ve Roblox

**Canonical URL:** `https://evrenozmen.com.tr/mobil-oyun-vergi-on-inceleme-formu`

**Son kontrol:** 25 Agustos 2026

**Yazar:** Evren Özmen, CPA / SMMM

Mobil oyun, uygulama, App Store, Google Play, AdMob, Unity Ads, AppLovin, Steam, Roblox veya publisher geliriniz varsa; bu form gelir modelinizi 20/B, hizmet ihracatı, KDV, şirket kuruluşu ve belge riski açısından ön sınıflandırmaya çevirir.

## Kisa Cevap

Mobil oyun geliri için doğru vergi cevabı platform adına göre değil, gelir modeline göre belirlenir. App Store, Google Play, AdMob, Steam, Roblox ve publisher gelirlerinde şirket türü, fatura, brüt-net platform raporu, ülke kırılımı, Türkiye kullanıcı payı, 20/B istisnası, KDV hizmet ihracı ve GVK 89/13 / KVK 10/1-g %100 kazanç indirimi birlikte kontrol edilmelidir.

## Alintiya Hazir Ozet

Mobil oyun vergi ön incelemesi önce gelirin kaynağını ayırmalıdır: mobil uygulama platform satışı, reklam geliri, in-app purchase, Steam satış geliri, Roblox/UGC geliri, yurt dışı publisher hizmeti veya oyun içi karakter/grafik geliştirme hizmeti. 20/B istisnası, hizmet ihracatı kazanç indirimi ve KDV hizmet ihracı farklı şartlara bağlıdır. Türkiye'deki kullanıcı payı, brüt platform raporu, komisyon, fatura alıcısı ve döviz transferi belgelenmeden "vergisiz" veya "%100 indirimli" sonucuna gidilmemelidir.

## On Inceleme Formu

<iframe title="Mobil Oyun Vergi On Inceleme Formu" loading="lazy" sandbox="allow-scripts allow-forms allow-popups allow-popups-to-escape-sandbox" style="width:100%;min-height:1040px;border:1px solid #d9e0ea;border-radius:8px;background:#f7f8fb;" srcdoc="<!doctype html>
<html lang=&quot;tr&quot;>
<head>
  <meta charset=&quot;utf-8&quot;>
  <meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1&quot;>
  <title>Mobil Oyun Vergi On Inceleme Formu</title>
  <style>
    * { box-sizing: border-box; }
    body { margin: 0; background: #f7f8fb; color: #172033; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, &quot;Segoe UI&quot;, sans-serif; line-height: 1.45; }
    .wrap { max-width: 1080px; margin: 0 auto; padding: 20px; }
    .top { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
    h1 { margin: 0 0 6px; font-size: 28px; line-height: 1.15; letter-spacing: 0; }
    h2 { margin: 0 0 12px; font-size: 18px; letter-spacing: 0; }
    p { margin: 0; color: #5d6678; }
    .stamp { flex: 0 0 auto; border: 1px solid #d9e0ea; background: #fff; border-radius: 8px; padding: 10px 12px; color: #5d6678; font-size: 13px; white-space: nowrap; }
    .grid { display: grid; grid-template-columns: minmax(0,1.08fr) minmax(320px,.92fr); gap: 16px; align-items: start; }
    .panel { background: #fff; border: 1px solid #d9e0ea; border-radius: 8px; padding: 16px; }
    .fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
    .wide { grid-column: 1 / -1; }
    label { display: block; margin-bottom: 6px; color: #253247; font-size: 13px; font-weight: 800; }
    input, select, textarea { width: 100%; min-height: 42px; border: 1px solid #d9e0ea; border-radius: 7px; background: #fff; color: #172033; font: inherit; padding: 10px 11px; }
    textarea { min-height: 118px; resize: vertical; }
    input:focus, select:focus, textarea:focus { outline: 2px solid rgba(15,118,110,.18); border-color: #0f766e; }
    .actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
    button, .button-link { appearance: none; display: inline-flex; align-items: center; justify-content: center; min-height: 42px; border: 1px solid #0f766e; border-radius: 7px; background: #0f766e; color: #fff; font: inherit; font-weight: 800; padding: 10px 13px; text-decoration: none; cursor: pointer; }
    button.secondary { background: #fff; color: #115e59; }
    .result { background: #eef3f7; border: 1px solid #d9e0ea; border-radius: 8px; padding: 14px; margin-bottom: 12px; }
    .score { margin: 0 0 4px; font-size: 34px; line-height: 1; font-weight: 900; color: #0f766e; letter-spacing: 0; }
    .tag { display: inline-block; margin-top: 8px; padding: 5px 8px; border-radius: 7px; background: #e7f6ef; color: #115e59; font-size: 12px; font-weight: 800; }
    .report { min-height: 350px; font-size: 13px; }
    .note { margin-top: 10px; font-size: 12px; color: #5d6678; }
    @media (max-width: 860px) { .wrap { padding: 14px; } .top { display: block; } .stamp { display: inline-block; margin-top: 12px; white-space: normal; } .grid, .fields { grid-template-columns: 1fr; } h1 { font-size: 24px; } }
  </style>
</head>
<body>
  <main class=&quot;wrap&quot;>
    <div class=&quot;top&quot;>
      <div>
        <h1>Mobil Oyun Vergi On Inceleme</h1>
        <p>App Store, Google Play, AdMob, Steam, Roblox veya publisher gelirinizi e-postaya hazir bir vergi kontrol raporuna cevirin.</p>
      </div>
      <div class=&quot;stamp&quot;>Son kontrol: 25 Agustos 2026</div>
    </div>
    <div class=&quot;grid&quot;>
      <section class=&quot;panel&quot;>
        <h2>Bilgiler</h2>
        <div class=&quot;fields&quot;>
          <div><label for=&quot;name&quot;>Ad soyad</label><input id=&quot;name&quot; autocomplete=&quot;name&quot;></div>
          <div><label for=&quot;email&quot;>E-posta</label><input id=&quot;email&quot; type=&quot;email&quot; autocomplete=&quot;email&quot;></div>
          <div><label for=&quot;platform&quot;>Ana gelir platformu</label><select id=&quot;platform&quot;><option>App Store</option><option>Google Play</option><option>AdMob</option><option>Unity Ads / AppLovin</option><option>Steam</option><option>Roblox / UGC</option><option>Yurt disi publisher</option><option>Web3 / token / NFT</option><option>Karışık</option></select></div>
          <div><label for=&quot;incomeType&quot;>Gelir tipi</label><select id=&quot;incomeType&quot;><option>Uygulama satisi / in-app purchase</option><option>Reklam geliri</option><option>Oyun gelistirme hizmeti</option><option>Oyun ici karakter / grafik / asset</option><option>Steam oyun satisi</option><option>Publisher sozlesmesi</option><option>Lisans / IP devri</option><option>Net degil</option></select></div>
          <div><label for=&quot;structure&quot;>Mevcut yapi</label><select id=&quot;structure&quot;><option>Sirket yok</option><option>Sahis sirketi</option><option>Limited sirket</option><option>Anonim sirket</option><option>Yurt disi sirket</option><option>Kararsizim</option></select></div>
          <div><label for=&quot;revenue&quot;>Yillik gelir beklentisi</label><input id=&quot;revenue&quot; placeholder=&quot;Orn. USD 120.000&quot;></div>
          <div><label for=&quot;countryReport&quot;>Ulke kirilimi var mi?</label><select id=&quot;countryReport&quot;><option>Evet, platform raporu var</option><option>Kismen var</option><option>Yok</option><option>Bilmiyorum</option></select></div>
          <div><label for=&quot;turkeyUsers&quot;>Turkiye kullanicisi/geliri var mi?</label><select id=&quot;turkeyUsers&quot;><option>Yok veya ayrilabiliyor</option><option>Var ve ayrilabiliyor</option><option>Var ama ayrilamiyor</option><option>Bilmiyorum</option></select></div>
          <div><label for=&quot;invoice&quot;>Fatura kime kesiliyor?</label><select id=&quot;invoice&quot;><option>Yurt disindaki sirket/platform</option><option>Turkiye'deki kisi/sirket</option><option>Fatura kesilmiyor</option><option>Henuz net degil</option></select></div>
          <div><label for=&quot;transfer&quot;>Tahsilat Turkiye'ye geliyor mu?</label><select id=&quot;transfer&quot;><option>Evet</option><option>Hayir</option><option>Kismen</option><option>Net degil</option></select></div>
          <div><label for=&quot;twentyB&quot;>20/B durumunuz</label><select id=&quot;twentyB&quot;><option>Belge yok / bilmiyorum</option><option>20/B istisna belgesi var</option><option>20/B bana uygun degil</option><option>Emin degilim</option></select></div>
          <div><label for=&quot;goal&quot;>Ana hedef</label><select id=&quot;goal&quot;><option>Sirket kurmak</option><option>Vergi istisnasi kontrolu</option><option>KDV/fatura kurgusu</option><option>Platform raporu muhasebesi</option><option>Teknopark / yatirim / exit hazirligi</option></select></div>
          <div class=&quot;wide&quot;><label for=&quot;notes&quot;>Kisa aciklama</label><textarea id=&quot;notes&quot; placeholder=&quot;Oyun/uygulama adi, platform, gelir akisi, ulke kirilimi, sozlesme ve merak ettiginiz konu...&quot;></textarea></div>
        </div>
        <div class=&quot;actions&quot;>
          <button type=&quot;button&quot; id=&quot;build&quot;>Raporu hazirla</button>
          <button type=&quot;button&quot; id=&quot;clear&quot; class=&quot;secondary&quot;>Temizle</button>
        </div>
        <p class=&quot;note&quot;>Bu arac on eleme icindir; nihai vergi, KDV ve istisna sonucu icin belge ve sozlesme kontrolu gerekir.</p>
      </section>
      <section class=&quot;panel&quot;>
        <h2>Sonuc</h2>
        <div class=&quot;result&quot;>
          <p id=&quot;score&quot; class=&quot;score&quot;>--</p>
          <p id=&quot;summary&quot;>Bilgileri girip raporu hazirlayin.</p>
          <span id=&quot;tag&quot; class=&quot;tag&quot;>On inceleme bekliyor</span>
        </div>
        <textarea id=&quot;report&quot; class=&quot;report&quot; readonly></textarea>
        <div class=&quot;actions&quot;>
          <button type=&quot;button&quot; id=&quot;copy&quot; class=&quot;secondary&quot;>Raporu kopyala</button>
          <a id=&quot;emailLink&quot; class=&quot;button-link&quot; href=&quot;mailto:info@ozmconsultancy.com?subject=Mobil%20oyun%20vergi%20on%20inceleme&quot;>E-posta ile gonder</a>
        </div>
        <p id=&quot;status&quot; class=&quot;note&quot; aria-live=&quot;polite&quot;></p>
      </section>
    </div>
  </main>
  <script>
    const ids = [&quot;name&quot;,&quot;email&quot;,&quot;platform&quot;,&quot;incomeType&quot;,&quot;structure&quot;,&quot;revenue&quot;,&quot;countryReport&quot;,&quot;turkeyUsers&quot;,&quot;invoice&quot;,&quot;transfer&quot;,&quot;twentyB&quot;,&quot;goal&quot;,&quot;notes&quot;];
    const $ = (id) => document.getElementById(id);
    const val = (id) => $(id).value.trim();
    function assess() {
      let score = 100;
      const risks = [];
      let tag = &quot;Hizmet ihracati / sirket kontrolu&quot;;
      if (val(&quot;platform&quot;).includes(&quot;Web3&quot;)) { score -= 30; tag = &quot;Web3 ayri degerleme gerekir&quot;; risks.push(&quot;Web3/token/NFT gelirlerinde kripto muhasebe ve degerleme ayrica incelenmelidir.&quot;); }
      if (val(&quot;incomeType&quot;).includes(&quot;Uygulama&quot;) &amp;&amp; val(&quot;structure&quot;) === &quot;Sirket yok&quot;) { tag = &quot;20/B adayi olabilir&quot;; risks.push(&quot;Gercek kisi mobil uygulama geliri icin 20/B istisna belgesi ve banka hesabi kontrol edilmelidir.&quot;); }
      if (val(&quot;incomeType&quot;).includes(&quot;Oyun gelistirme&quot;) || val(&quot;incomeType&quot;).includes(&quot;karakter&quot;) || val(&quot;incomeType&quot;).includes(&quot;Publisher&quot;)) { tag = &quot;Hizmet ihracati adayi olabilir&quot;; risks.push(&quot;Yurt disi musteri, fatura, hizmetten yurt disinda yararlanma ve transfer sartlari kontrol edilmelidir.&quot;); }
      if (!val(&quot;countryReport&quot;).includes(&quot;Evet&quot;)) { score -= 18; risks.push(&quot;Ulke kirilimi net degilse Turkiye kullanicisi ve KDV ayrimi zayiflar.&quot;); }
      if (val(&quot;turkeyUsers&quot;).includes(&quot;ayrilamiyor&quot;) || val(&quot;turkeyUsers&quot;).includes(&quot;Bilmiyorum&quot;)) { score -= 22; risks.push(&quot;Turkiye kullanici payi ayrilamiyorsa hizmet ihraci ve KDV istisnasi risklidir.&quot;); }
      if (!val(&quot;invoice&quot;).includes(&quot;Yurt disindaki&quot;)) { score -= 18; risks.push(&quot;Fatura alicisi/hukuki musteri netlestirilmelidir.&quot;); }
      if (val(&quot;transfer&quot;) !== &quot;Evet&quot;) { score -= 14; risks.push(&quot;Doviz transferi ve banka izi uygunluk dosyasinda kontrol edilmelidir.&quot;); }
      if (val(&quot;structure&quot;) === &quot;Sirket yok&quot; &amp;&amp; !tag.includes(&quot;20/B&quot;)) { score -= 10; risks.push(&quot;Duzenli platform veya publisher geliri icin sirket kurulusu planlanmalidir.&quot;); }
      score = Math.max(0, Math.min(100, score));
      const priority = score >= 80 ? &quot;Yuksek potansiyel - belge kontrolu gerekli&quot; : score >= 55 ? &quot;Yapilandirma gerekli&quot; : &quot;Yuksek risk - once model duzeltilmeli&quot;;
      return { score, tag, priority, risks };
    }
    function build() {
      const result = assess();
      $(&quot;score&quot;).textContent = result.score + &quot;/100&quot;;
      $(&quot;summary&quot;).textContent = result.priority;
      $(&quot;tag&quot;).textContent = result.tag;
      const report = [
        &quot;Mobil Oyun Vergi On Inceleme&quot;,
        &quot;&quot;,
        `Ad soyad: ${val(&quot;name&quot;)}`,
        `E-posta: ${val(&quot;email&quot;)}`,
        `Platform: ${val(&quot;platform&quot;)}`,
        `Gelir tipi: ${val(&quot;incomeType&quot;)}`,
        `Mevcut yapi: ${val(&quot;structure&quot;)}`,
        `Yillik gelir beklentisi: ${val(&quot;revenue&quot;)}`,
        `Ulke kirilimi: ${val(&quot;countryReport&quot;)}`,
        `Turkiye kullanicisi/geliri: ${val(&quot;turkeyUsers&quot;)}`,
        `Fatura: ${val(&quot;invoice&quot;)}`,
        `Tahsilat: ${val(&quot;transfer&quot;)}`,
        `20/B durumu: ${val(&quot;twentyB&quot;)}`,
        `Ana hedef: ${val(&quot;goal&quot;)}`,
        &quot;&quot;,
        `On skor: ${result.score}/100`,
        `On siniflandirma: ${result.tag}`,
        `Oncelik: ${result.priority}`,
        &quot;&quot;,
        &quot;Risk / kontrol notlari:&quot;,
        ...(result.risks.length ? result.risks.map((risk) => `- ${risk}`) : [&quot;- Ilk bilgiler olumlu; platform raporu, sozlesme, fatura ve banka kaydi kontrol edilmeli.&quot;]),
        &quot;&quot;,
        &quot;Kisa aciklama:&quot;,
        val(&quot;notes&quot;)
      ].join(&quot;\n&quot;);
      $(&quot;report&quot;).value = report;
      $(&quot;emailLink&quot;).href = `mailto:info@ozmconsultancy.com?subject=${encodeURIComponent(&quot;Mobil oyun vergi on inceleme&quot;)}&amp;body=${encodeURIComponent(report)}`;
    }
    $(&quot;build&quot;).addEventListener(&quot;click&quot;, build);
    $(&quot;clear&quot;).addEventListener(&quot;click&quot;, () => { ids.forEach((id) => { const el = $(id); if (el.tagName === &quot;SELECT&quot;) el.selectedIndex = 0; else el.value = &quot;&quot;; }); build(); });
    $(&quot;copy&quot;).addEventListener(&quot;click&quot;, async () => { build(); try { await navigator.clipboard.writeText($(&quot;report&quot;).value); $(&quot;status&quot;).textContent = &quot;Rapor kopyalandi.&quot;; } catch { $(&quot;report&quot;).focus(); $(&quot;report&quot;).select(); $(&quot;status&quot;).textContent = &quot;Rapor alanini secip kopyalayabilirsiniz.&quot;; } });
    ids.forEach((id) => $(id).addEventListener(&quot;input&quot;, build));
    build();
  </script>
</body>
</html>"></iframe>

## Form Sonrası Ne Gönderilmeli?

- App Store Connect, Google Play Console, AdMob, Unity Ads, AppLovin, Steamworks veya Roblox raporu
- Ülke bazlı satış / reklam / kullanıcı kırılımı
- Brüt hasılat, platform komisyonu ve net tahsilat bilgisi
- Publisher veya platform sözleşmesi
- Fatura örneği veya planlanan fatura bilgisi
- Banka ve döviz transfer kayıtları
- Mevcut şirket veya kurulması düşünülen yapı

## İlgili Rehberler

- Ana mobil oyun şirketi rehberi: https://evrenozmen.com.tr/mobil-oyun-sirketi-kurulusu-vergi-istisnasi
- 20/B mi hizmet ihracatı mı?: https://evrenozmen.com.tr/mobil-oyun-20b-mi-hizmet-ihracati-mi
- App Store, Google Play ve AdMob gelirleri: https://evrenozmen.com.tr/app-store-google-play-admob-gelirleri-vergi
- Steam, Roblox ve oyun içi gelirler: https://evrenozmen.com.tr/steam-roblox-oyun-geliri-vergi

<!-- OZM_SITEWIDE_LEAD_FOOTER_START -->
## İnceleme İçin Hazır Liste

Lead'in hızlı ilerlemesi için şu bilgileri tek mesajda gönderin: platform, gelir tipi, ülke kırılımı, brüt satış, komisyon, net tahsilat, Türkiye kullanıcı payı, fatura modeli ve mevcut şirket yapısı.

Başlangıç formu: https://evrenozmen.com.tr/mobil-oyun-vergi-on-inceleme-formu
<!-- OZM_SITEWIDE_LEAD_FOOTER_END -->

## Kaynaklar

- GİB özelgesi, App Store ve Google Play gelirleri: https://gib.gov.tr/mevzuat/kanun/435/ozelge/38808
- GİB özelgesi, uluslararası oyun platformlarında oyun tasarım hizmeti: https://www.gib.gov.tr/mevzuat/kanun/436/ozelge/38960
- GİB özelgesi, mobil uygulama geliştiricisi ile yapılan ödeme ve 20/B: https://www.gib.gov.tr/mevzuat/kanun/433/ozelge/38895

