I'm installing Ubuntu in a VM using VirtualBox; I selected the dynamic expansion option (as opposed to fixed) in VirtualBox and set the limit to 85GB. Then, when I was installing Ubuntu, the virtual disk I created for it states it is 91.3GB. Did I make a mistake somewhere or is this difference normal? If it is normal, why does it exist? Thank you.
Yes, this is normal.
This is happening because, unfortunately, in practice, the word "gigabyte" can refer to two different units of digital information storage.
Strictly speaking, these days, a gigabyte (GB) is formally defined as exactly one billion bytes, and similarly, a megabyte (MB) is exactly one million bytes and a kilobyte (kB) is exactly one thousand bytes.
However, using powers of two is more convenient for many purposes, and 210 is 1024, which is pretty close to 103. So historically, and in many instances today, people say "kilobyte" to mean 1024 bytes, "megabyte" to mean 1024 "kilobytes", and gigabyte to mean 1024 "megabytes."
This is the distinction between "decimal" and "binary" kilobytes/megabytes/gigabytes/terabytes/etc.
These days, we have separate unit names and symbols formally defined for the units that scale by factors of 1024 rather than 1000: A kibibyte (KiB, and informally a "binary kilobyte") is 1024 bytes, a mebibyte (MiB, "binary megabyte") is 1024 kibibytes, a gibibyte (GiB, "binary gigabyte") is 1024 kibibytes, a tebibyte (TiB, "binary terabyte") is 1024 gibibytes, and so forth.
What's happening is that, apparently, VirtualBox is showing you storage capacity in units of gibibytes, while Ubuntu's installer shows it in units of (decimal) gigabytes.
See this article for more details and historical information.