Boss: Money talks

Play this quiz

Compare channels

ten-dollar-sale.txt
Hyper Shards at $10.00 (example)Steam keeps                     30%Stripe on our website    2.9% + $0.30

How much more reaches the studio from one sale on our own website than from one sale on Steam?

  1. $0.59
  2. $2.41
  3. $3.00
  4. $9.41
Show the answer

$2.41

Steam keeps $3.00, leaving $7.00. Stripe keeps $0.29 + $0.30 = $0.59, leaving $9.41. $9.41 minus $7.00 is $2.41 more per sale, before tax and our own costs.

Read the numbers

garden-month.txt
Garden Defense, this month (made-up)Players                    10,000Players who bought            300Ad impressions             20,000eCPM                        $2.00

Which statement about this report is right?

  1. Conversion rate is 3%, and ads earned about $40
  2. Conversion rate is 30%, and ads earned about $40
  3. Conversion rate is 3%, and ads earned about $400
Show the answer

Conversion rate is 3%, and ads earned about $40

300 out of 10,000 players is 3 in 100, so 3%. eCPM is per 1,000 impressions: 20 groups of 1,000 times $2 is $40.

Spot the unfair design

shop-and-support.txt
Frozen Garden world ........ $2.99Tip jar ............. any amountSupporter pack ...... name in creditsMystery Seed Chest ......... $0.99  (random prize inside)

Which item breaks our fair rules?

  1. Frozen Garden world
  2. Tip jar
  3. Supporter pack
  4. Mystery Seed Chest
Show the answer

Mystery Seed Chest

Paying real money for a random prize works like gambling. A clear item, an honest tip jar and a fair supporter perk are all fine.

Profit check

studio-ledger.txt
Studio ledger, one year (made-up)REVENUE  Game sales             $600  Ad earnings            $300  Tips (donations)       $100COSTS  Developer fees         $124  Tools and domain       $176

Kai checks the studio's ledger, the list of all money in and out of its business bank account. What was the profit?

  1. $1,000
  2. $700
  3. $600
  4. $1,300
Show the answer

$700

Revenue is $600 + $300 + $100 = $1,000, because tips to a company count as revenue too. Costs are $124 + $176 = $300, so profit is $700. Income tax is usually worked out on that profit.

Bug hunt

thanks.js
// Runs on our /thanks page, in the browserconst params = new URLSearchParams(location.search);if (params.get('paid') === 'yes') {  unlockHyperShards();}

Kai unlocks Hyper Shards like this after Stripe Checkout. What is the problem, and the fix?

  1. Anyone can visit /thanks?paid=yes. Unlock on the server from a signed checkout.session.completed webhook instead
  2. Nothing is wrong, because the page only opens after paying
  3. It should check for "true" instead of "yes"
Show the answer

Anyone can visit /thanks?paid=yes. Unlock on the server from a signed checkout.session.completed webhook instead

Anyone can type a browser address, and a player who closes the tab never reaches it. Only a webhook whose Stripe-Signature checks out proves the payment, and then the server writes the unlock to Firestore.

Price check

Hyper Shards costs $4.99. Converted exactly at today's exchange rate, that is EUR 4.73. Which euro price should players in Germany see?

  1. EUR 4.73, converted exactly
  2. EUR 4.99, a natural local price we review when rates move a lot
  3. $4.99, so players in Germany convert it themselves
Show the answer

EUR 4.99, a natural local price we review when rates move a lot

Players trust natural local price points like EUR 4.99. Exchange rates move every day, so an exact conversion looks odd and is soon out of date. A local price also spares buyers a foreign-currency fee from their bank.

Who collects?

A player in Italy buys "Remove ads" inside Garden Defense from Google Play, and Hyper Shards from our website through Stripe. Who handles the Italian VAT?

  1. Google for "Remove ads", and our studio for Hyper Shards, because we are the merchant of record on our own website
  2. Our studio for both
  3. Stripe for both, because Stripe moves the money
Show the answer

Google for "Remove ads", and our studio for Hyper Shards, because we are the merchant of record on our own website

Inside Google Play, the store is usually the merchant of record and handles VAT. On our own website we are the merchant of record. Stripe Tax can do the maths, but the duty is ours.

Player message

Email to the studio
There is a $4.99 charge from Superintelligent Game Studios on my card. My child says they bought your game without asking. Can you help?

What should the studio do?

  1. Refund it quickly and kindly. It costs far less than a dispute with a US$15 fee
  2. Ignore it, because the game was delivered
  3. Tell them to ask their bank for a chargeback
Show the answer

Refund it quickly and kindly. It costs far less than a dispute with a US$15 fee

A refund costs $4.99. A dispute would cost the $4.99 plus a US$15 fee, and push up our dispute rate. A fast, kind refund also keeps the family's trust.