Massive Slowdown & 4× Billing Increase Starting Exactly on New Billing Cycle

Hi everyone,

I’m seeing a sudden, extreme degradation in Vercel Function performance that began exactly at the start of my new billing cycle (Nov 21). Nothing changed in my code or infrastructure, yet function duration increased by 10×–40×, resulting in 132.52 GB-Hours billed this cycle vs 30.35 GB-Hours last cycle.

I am sharing the complete data below so Vercel staff or the community can help identify whether this is a Vercel-side issue.


:puzzle_piece: 1. Summary of the Issue

  • All my API routes suddenly became 10–40× slower starting Nov 21.

  • No code changes, no new queries, no new dependencies, no traffic spike.

  • The slowdown applies to every Node.js function except one.

  • As a result, function duration billing increased from $0 → $23.94, even though usage is lower than the previous cycle.

  • MongoDB performance logs show normal latency.

  • This strongly suggests a Vercel platform regression or environment change.


:puzzle_piece: 2. Route-Level Performance Comparison (Before vs After Nov 21)

:tear_off_calendar: Nov 21 → Dec 7 (current billing cycle)

(These durations are extremely abnormal for my app)

Route Invocations GB-Hours P75 Duration Error Rate
/api/messages/unread-count 32K 53.78 11s 52.8%
/api/connection-requests/received 33K 15.23 2.53s 0%
/api/notifications/unread-count 33K 14.23 2.4s 0%
/api/study-posts/[id]/increment-view 39K 9.78 1.78s 0%
/api/ad/random 39K 6.71 1.25s 0%
/api/study-posts/search 13K 5.87 2.56s 0%
/api/tags/recommended 10K 5.01 2.65s 0%
/api/users/connected-user 9K 4.33 2.73s 0%
/api/stream/webhook 17K 4.2 1.27s 0.1%
/api/sale-items/relevant 11K 2.36 1.68s 0%

:tear_off_calendar: Nov 5 → Nov 20 (previous period — SAME CODE)

(All functions were extremely fast and cheap)

Route Invocations GB-Hours P75 Duration Error Rate
/api/messages/unread-count 46K 6.64 69ms 4.3%
/api/connection-requests/received 47K 1.93 64ms 0%
/api/notifications/unread-count 47K 1.66 40ms 0%
/api/ad/random 65K 1.18 18ms 0%
/api/study-posts/search 18K 1.05 153ms 0%
/api/tags/recommended 14K 1.03 175ms 0%
/api/users/connected-user 13K 1 196ms 0%
/api/study-posts/[id]/increment-view 58K 0.67 20ms 0%
/api/sale-items/relevant 12K 0.47 151ms 0%
/api/feedback-images 8.4K 0.41 150ms 0%

:puzzle_piece: 3. Billing Comparison

:money_with_wings: Current Billing Cycle

  • Function Duration: 132.52 GB-Hours → $23.94

  • Function Invocations: 311.67K → $0.60

  • Build Minutes: $0.41

  • Observability base fee: $4.67

  • Total: $5.03 after $20 credit


:money_with_wings: Previous Billing Cycle

  • Function Duration: 30.35 GB-Hours → $0.00

  • Function Invocations: 870.66K → $0.00

  • Everything free under Pro plan credit

  • Total owed: $0


:puzzle_piece: 4. Why This Appears to Be a Vercel Issue

:check_mark: No code changes between cycles.

:check_mark: DB latency from MongoDB Atlas remains normal.

:check_mark: Functions that were consistently fast (20–150ms) suddenly take 1–11 seconds.

:check_mark: Slowdown affects all functions except one → unlikely to be DB-related.

:check_mark: Slowdown started exactly at billing cycle boundary (Nov 21 @ 9am).

:check_mark: GB-Hours increased 4.3× while traffic is lower.

This strongly suggests:

  • A runtime regression

  • A change in function scheduling or compute allocation

  • Unexpected throttling

  • A bug in duration metering

  • A change in Fluid Compute or cold start behavior


:puzzle_piece: 5. What I’ve Done Temporarily

To avoid runaway billing while debugging, I set:

export const maxDuration = 1;

on several endpoints to prevent long-hanging requests from inflating GB-Hours.

I may temporarily move API routes to a standalone Node server until I understand what’s going on.


:red_question_mark: 6. My Questions for Vercel / Community

1. Did Vercel make any changes to Node.js function environments around Nov 21?

2. Are other users experiencing 10×–40× function slowdowns this billing cycle?

3. Could this be a regression in Fluid Compute or shared runtime allocation?

4. Is there a known issue where function duration is being overcounted?

5. How can I ensure my project isn’t being placed on degraded compute nodes?

6. Why do functions returning a single Mongo query suddenly take 2–11 seconds?


:folded_hands: Thank You

This issue has a huge impact on my costs and app performance, so any insight from the Vercel team or other developers would be greatly appreciated.

Also experiencing this, any updates would be lovely to hear!!!

My bills got 4-5 times bigger over night without change of code or traffic. Been trying to get an honest explanation from support without success. Switching to fluid compute won’t make a difference in my case. Migrated my most trafficked sites to other providers in the mean time. Its absurd!

Same issues here. Function duration has increased most but other services also show an increase. And also unable to get any answers…

Hi there, could you share the project IDs where you experienced this issue? Also, what Next.js version are you using?

@ahmedghribstranger I just bumped into this (read the “trade-off”) in the release notes. Are you running Next v16.x.x?

The most dramatic increase in on this project: prj_721WXjNMscnCUbWqFeU9q6tn1vaC. It’s running Next v16.1.5

Thanks for sharing. Glad you pointed out the tradeoff section from the Next 16 release notes. It might be related but we have to see what is causing your issue.

When did you upgrade to v16 in the project you shared? Does the increase in cost coincide with the update?

Yes, they strongly coincide. Not just in the project mentioned but in all other projects as well.

Hey there,

Not really. I’m using Next 15. And literally I changed nothing when this happened.

Anyway I simply moved to AWS

I see. Thanks for sharing that. Let me dig into this with our team and see how I can help.

Correction: We’ve updated from 15 to 16 on the 28th of November but the most significant increase is on the 5th of December. On that day we only patched v16.0.5 to v16.0.7 because of the CVE-2025-55182 vulnerability.

Thank you for looking into it!

Got it. When was the switch from 16.0.7 to 16.15?

Assuming you mean v16.1.5 and not v16.15, that was on 27th of January. The timeline:

date version
28/11 15.5.4 → 16.0.5
05/12 16.0.5 → 16.0.7 (increase in usage)
12/12 16.0.7 → 16.0.10
05/01 16.0.10 → 16.1.1
27/01 16.1.1 → 16.1.6

Thanks for correcting that and this list is quite helpful.

I notice you aren’t using Fluid compute, have you tried that? It may reduce the Function usage bill as we only charge for active CPU there.

I’m still working with Next.js team and support to see how else we can fix this.

Any updates on this?

Fluid compute might negate the increased costs but doesn’t explain it. I find it difficult to accept the increase when it’s not caused by increased traffic, builds or functionality.

And to be honest, it’s getting so ridiculous that I’m inclined to agree with Ahmedghribstranger and just move to another provider.


Graph showing last 12 months per week, during which there is no change in traffic, number of pages, caching, functionality.

Hi @freekboon, thanks for sharing this information. It is taking longer because earlier it was confused for another issue, which was solved by enabling caching and fluid.

I’m still checking with the team. I’ll post an update here when I have.

Hey @freekboon – I just took a look at the project you reported and I think you might be running into this bug (specifically your […segments] routes). It looks like there’s a routing bug that causes these to lead to cache MISSes. I’m currently investigating the cause of this and will be working on a fix, but in the meantime, you could attempt to rename those files to a different value and see if it alleviates. I’ll update the above referenced GitHub issue once the underlying bug is fixed.

Thanks for the update and I will look into it. But we are not using Cache Components in this project. Is it possible for this bug to occur without using Cache Components?

This would happen regardless of using cache components. A fix has landed on canary and will go out in our next stable release.