diff --git a/lib/src/usage_impl.dart b/lib/src/usage_impl.dart
index 4d89968..b1ea566 100644
--- a/lib/src/usage_impl.dart
+++ b/lib/src/usage_impl.dart
@@ -228,7 +228,7 @@
       _trySendBatches(Completer<void>());
     }
     var f = Future.wait(_futures);
-    if (timeout != null) f = f.timeout(timeout);
+    if (timeout != null) f = f.timeout(timeout, onTimeout: () => []);
     return f;
   }
 
diff --git a/test/src/common.dart b/test/src/common.dart
index e934e71..b08d89b 100644
--- a/test/src/common.dart
+++ b/test/src/common.dart
@@ -28,6 +28,23 @@
   String get last => mockPostHandler.last;
 }
 
+class StallingAnalyticsImplMock extends AnalyticsImpl {
+  StallingAnalyticsImplMock(String trackingId, {Map<String, dynamic>? props})
+      : super(trackingId, MockProperties(props), StallingPostHandler(),
+            applicationName: 'Test App', applicationVersion: '0.1');
+}
+
+class StallingPostHandler extends PostHandler {
+  @override
+  void close() {}
+
+  @override
+  String encodeHit(Map<String, String> hit) => jsonEncode(hit);
+
+  @override
+  Future sendPost(String url, List<String> batch) => Completer().future;
+}
+
 class MockProperties extends PersistentProperties {
   Map<String, dynamic> props = {};
 
diff --git a/test/usage_impl_test.dart b/test/usage_impl_test.dart
index 21111b3..8b2739a 100644
--- a/test/usage_impl_test.dart
+++ b/test/usage_impl_test.dart
@@ -90,6 +90,13 @@
       return mock.waitForLastPing(timeout: Duration(milliseconds: 100));
     });
 
+    test('waitForLastPing times out', () async {
+      var mock = StallingAnalyticsImplMock('blahID');
+      // ignore: unawaited_futures
+      mock.sendScreenView('foo');
+      await mock.waitForLastPing(timeout: Duration(milliseconds: 100));
+    });
+
     group('clientId', () {
       test('is available immediately', () {
         var mock = createMock();
