Have no idea how ethereum works but I had to use dai and I just use 1 gwei every time I want to send something... Seems to confirm within an hour and I don't care about fast transactions so...
1 Gwei is what you used for gas price. The transaction will finally be confirmed even if the gas price is 0.1 Gwei
1 Gwei = 10
-9 Ethereum
The problem OP faced is not due to low gas price. That's due to low gas limit. If the gas limit is lower than gas needed to be used, the transaction will be failed even if the gas price is 1000 Gwei.
Gas price is something like Sat/byte in bitcoin transactions.
A big difference of Ethereum with bitcoin is in size of the transaction.
In bitcoin transactions, you don't need to enter the size of transaction. But in Ethereum you must do that.
Used gas is something like size of transaction.
In bitcoin transactions:
Fee = size (in byte) * (Sat/byte)
In Ethereum transactions:
Fee= used gas * gas price
For making a transaction in Ethereum blockchain, you must enter a value for gas limit. The gas limit must be bigger than gas needed to be used. Otherwise, the transaction will be failed.
The gas that is not used (extra gas) will be sent back to your wallet.
In most of Ethereum wallets, the gas limit is automatically entered by the wallet and that's why you haven't faced any problem till now.