How do you send to multiple addresses by paying a one time fee? Which wallet supports this? I have 20+ addresses I need to payout to. How can I send to all of these addresses without having to do it one at a time and paying a fee for each? 

Which desktop and mobile wallet supports this type of feature?
TL;DR: Just read the second paragraph of "Concrete Numbers".



Wallet Recommendation: Electrum

Doing this in Electrum is very simple. Just switch to the Send tab and then (in the menu) choose Tools → Pay to many. The "Pay to" field will become a text area and a popup will open, telling you how to send money to many addresses.



Note that the unit of the amount can be changed in the settings (Tools → Preferences → Appearance → Base unit) and is mBTC by default.

The amount field will be automatically filled in once you have at least one valid line in the "Pay to" field:



The amount field probably isn't grayed out from the beginning because you technically can switch between pay to many mode and pay to single address mode without choosing Tools → Pay to many by just hitting enter in the "Pay to" field which automatically makes it a text area.

The Fee

As the fee by default is paid per transaction – not per transaction output –, you only have to pay it once even if you send money to a large number of addresses. It can be adjusted as a linear function of the transaction size in Tools → Preferences → Transactions.

Adjusting the Fee in Electrum

Alternatively, you can check the box Dynamic fees in Tools → Preferences → Transactions to use Electrum's dynamic fees feature which changes the fee function to not only depend on the size of the transaction being submitted but also on the network conditions (the number of pending transactions and the current rate at which transactions are processed).

In any case, Electrum shows you the fee in a popup before the transaction is sent if you check check View transactions before signing in Tools → Preferences → Transactions (not sure whether it does if you don't). If you use the dynamic fees feature, you will receive a warning if the fees are currently unusually high due to inconvenient network conditions.

As an alternative even for that, you can check the checkbox Set transactions fees manually in Tools → Preferences → Transactions which lets you set the fee manually for every transaction.

The Amount of Fee

As for how much the fee will be, let's say you pay a fee of ρ/Byte where ρ is around 10 Satoshi. This is equal to what you mean by


  Would it be .0001 x 20 = .002 in fees?


if you mean ".0001 BTC/kB" by ".0001" because .0001 BTC/kB * 100'000'000 Satoshi/BTC / (1000 B/kB) = 10 Satoshi/B

You can inform yourself about fee recommendations in articles like this one.

For simplicity, let's assume you use P2PKH with compressed keys (which is standard), have a UTXO large enough for the entire transaction but not of just the right size, so you need a change address (which is almost always the case).

Under these assumptions, you have to use 148 Byte per input and 34 Byte. In addition to this, the transaction header needs 10 more Bytes.

We can now write down a function φ : ℕ×ℕ×ℝ → Satoshi which tells us the transaction fee provided the number of inputs and outputs as well as ρ. This function is: φ(ni, no, ρ) := (10 + ni*148 + no*34) * ρ * Satoshi

Let γ : ℕ×ℝ → Satoshi be the function which tells us the fee for a transaction with 1 input, 1 change address, and and n addresses you want to send money to. This function is defined as: γ(n, ρ) := (192 + n*34) * ρ * Satoshi

Concrete Numbers

If you pay the 20 people individually, you will spend 20*γ(1, ρ) = 4'520*ρ*Satoshi = 0.0452*ρ*mBTC as the fee. On the other hand, if you pay them all at once, you only spend γ(20, ρ) = 872*ρ*Satoshi = 0.00872*ρ*mBTC. If we assume ρ=10, that's 0.452 mBTC or 0.0872 mBTC respectively.

The difference is that you would spend (0.452 mBTC)/(0.0872 mBTC) = 5.18 times as much of a fee if you made individual transactions compared to if you made one cumulative transaction.

If you pay the 200 people individually, you will spend 200*γ(1, ρ) = 45'200*ρ*Satoshi = 0.452*ρ*mBTC as the fee. On the other hand, if you pay them all at once, you only spend γ(200, ρ) = 6'992*ρ*Satoshi = 0.06992*ρ*mBTC. If we assume ρ=10, that's 4.52 mBTC or 0.6992 mBTC.

The difference is that you would spend 6.46 as much of a fee if you made individual transactions compared to if you made one cumulative transaction.

Data Import

Furthermore, it's probably easier to make one big transaction than to make many small ones. If you have such a table in LibreOffice Calc, you can just save it as a CVS (comma-separated values) file and feed it to Electrum as it itself describes it in the popup seen in the first screenshot.