Do not use forEach with async-await TLDR: Use for...of instead of forEach() in asynchronous code. For legacy browsers, use for...i or [].reduce() To execute the promises in parallel, use Promise.all([].map(...)) The problem