As the name suggests, FutureProvider provides a Future value that might not be ready when the widget that gets the value is already ready to use . And that has a lot to do with Future class in Flutter. That’s a big difference with other providers. Since, the provided value might take time to appear, it must not be null.