Hacker ApprovedDepartments

ZGC garbage collector

Hacker Approved

The most recommended of 4 garbage collectors

People recommend ZGC for Java applications that need very low pause times, often under 1ms. The usual caveat is that it gives up some throughput for that latency.

People recommend ZGC for Java applications that need very low pause times, often under 1ms. The usual caveat is that it gives up some throughput for that latency.

24 people gave an opinion

recommend it
17
criticize it
7
approval share
71%
Each figure is one person. RecommendsCriticizes

Recommended in 10 of 13 months

  1. November 2025: recommended
  2. December 2025: not recommended
  3. January 2026: not recommended
  4. February 2026: recommended
  5. March 2026: recommended
  6. April 2026: recommended
  7. May 2026: recommended
  8. June 2026: recommended
  9. July 2026: recommended
  10. August 2026: recommended
  11. September 2026: recommended
  12. October 2026: recommended
  13. November 2026: not recommended (month in progress)

Why it carries the badge

  • 17 people recommend itNeeds 10 or more, met.
  • 2.4 recommenders for every criticNeeds 2 to 1 or better, met.
  • Recommended in 10 of 13 monthsNeeds 4 or more, met.

The same three rules apply to every product, and the badge can’t be bought. How the badge works

What people say about it

The reasons people give, with the number of comments that give each one. Open a reason to read what they said.

Why people recommend it

Each mark is one comment

What people warn about

Each mark is one comment

  • Multi-second pauses or background overhead

    “ZGC performance is _catastrophically_ bad with 1s, because more time was being spent on "background" GC than actually servicing requests.”

    Comment from 4 Sep 2026 in “Why is Arrays.fill 265 times slower on G1GC?”

    “I have gotten multi second pause times with ZGC.”

    Comment from 13 May 2026 in “Reverting the incremental GC in Python 3.14 and 3.15”

Other garbage collectors people recommend

The three most recommended other garbage collectors, with the same counts for each, so you can compare like for like. The tick on each bar marks the 2 to 1 line the badge needs.

ZGC garbage collector compared with 3 alternatives
ProductRecommendCriticizeApprovalMonthsOwnedBadge
ZGC garbage collectorThis page17771%10—Approved
G1 garbage collector6186%5——
Boehm GC5550%4——
Parallel GC (OpenJDK)5271%4——
See all 4 garbage collectors, ranked

What people said

40 of the 47 comments that mention it, newest first. Each links to the original comment.

“the best Java GCs have sub-millisecond pause times for huge heap sizes”

RecommendsComment from 30 Oct 2026 on Hacker News

“ZGC is effectively pause-free.”

RecommendsComment from 18 Oct 2026 in “JDK 28”

“It has no real GC pauses.”

RecommendsComment from 18 Oct 2026 in “JDK 28”

“it encourages you to allocate a fair amount of memory to your heap, which isn't ideal in this world of kubernetes and microservices”

MixedComment from 18 Oct 2026 in “JDK 28”

“ZGC doesn't have GC pauses.”

RecommendsComment from 18 Oct 2026 in “JDK 28”

“guarantees < 1ms pause times even for TB heaps”

RecommendsComment from 23 Sep 2026 on Hacker News

“ZGC is able to achieve sub-ms pauses.”

RecommendsComment from 13 Sep 2026 in “Rust is tier-1 language at Microsoft”

“That throughput penalty is not very high with generational ZGC.”

RecommendsComment from 5 Sep 2026 in “Why is Arrays.fill 265 times slower on G1GC?”

“ZGC performance is _catastrophically_ bad with 1s, because more time was being spent on "background" GC than actually servicing requests.”

CriticizesComment from 4 Sep 2026 in “Why is Arrays.fill 265 times slower on G1GC?”

“The low latency that it offers at near G1 speeds is a very good trade off”

RecommendsComment from 4 Sep 2026 in “Why is Arrays.fill 265 times slower on G1GC?”

“ZGC is unparalleled for low-latency (GC pauses are just gone).”

RecommendsComment from 4 Sep 2026 in “Why is Arrays.fill 265 times slower on G1GC?”

“now with ZGC, memory management in Java is more predictable than with malloc/free”

RecommendsComment from 20 Aug 2026 in “JDK 27 G1/Parallel/Serial GC Changes”

“The main practical impact of that has been saying goodbye to GC pauses, and getting low latency”

RecommendsComment from 14 Aug 2026 in “JDK 27 G1/Parallel/Serial GC Changes”

“in practice it makes it a non-issue for a large class of interesting and very common programs”

RecommendsComment from 14 Aug 2026 in “JDK 27 G1/Parallel/Serial GC Changes”

“Those pauses are gone today.”

RecommendsComment from 14 Aug 2026 in “JDK 27 G1/Parallel/Serial GC Changes”

“Well under 1ms for ZGC (to the point that OS-caused hiccups are of similar magnitudes).”

RecommendsComment from 14 Aug 2026 in “JDK 27 G1/Parallel/Serial GC Changes”

“suggests they’re still off by an order of magnitude”

CriticizesComment from 14 Aug 2026 in “JDK 27 G1/Parallel/Serial GC Changes”

“ZGC for interactive applications where latency matters a lot”

RecommendsComment from 13 Aug 2026 in “JDK 27 G1/Parallel/Serial GC Changes”

“ZGC, probably the world's most sophisticated moving collector”

RecommendsComment from 9 Aug 2026 in “Show HN: Wyzer Programming Language”

“I just think ZGC is better for the job of a game server.”

RecommendsComment from 19 Jul 2026 in “Minecraft: Java Edition now uses SDL3”

“What matters is that the server remains responsive in a timely fashion, which ZGC enables.”

RecommendsComment from 19 Jul 2026 in “Minecraft: Java Edition now uses SDL3”

“ZGC has very low latency and the larger the heap you give it the less it'll slow things down”

RecommendsComment from 19 Jul 2026 in “Minecraft: Java Edition now uses SDL3”

“ZGC does no work in stop-the-world pauses”

RecommendsComment from 26 Jun 2026 in “The Garbage Collection Handbook: The Art of Automatic Memory Management (2nd Ed)”

“ZGC is extremely good work.”

RecommendsComment from 26 Jun 2026 in “Gossamer: a Rust-flavoured language with real goroutines and pause-free memory”

“If you want pause freedom, go use ZGC or another modern GC on a modern VM.”

RecommendsComment from 26 Jun 2026 in “Gossamer: a Rust-flavoured language with real goroutines and pause-free memory”

“are no larger than latency hiccups introduced by the OS”

RecommendsComment from 26 Jun 2026 in “The Garbage Collection Handbook: The Art of Automatic Memory Management (2nd Ed)”

“I have gotten multi second pause times with ZGC.”

CriticizesComment from 13 May 2026 in “Reverting the incremental GC in Python 3.14 and 3.15”

“you just rely on ZGC to do its thing, and it works”

RecommendsComment from 12 May 2026 in “If AI Writes Your Code, Why Use Python?”

“low latency GCs like the JVM's ZGC trading manual memory management for no memory related security vulnerabilities is pretty appealing”

RecommendsComment from 6 Apr 2026 in “LÖVE: 2D Game Framework for Lua”

“Modern ZGC guarantees under 1ms pause times”

RecommendsComment from 20 Mar 2026 in “Java Is Fast. Your Code Might Not Be”

“Do you need extra-low latency, even at very high percentile and are willing to give away a bit of throughput for it? ZGC”

RecommendsComment from 19 Mar 2026 in “Java 26 is here, and with it a solid foundation for the future”

“I'm not sure it's even better than Java's, especially for modern ZGC”

RecommendsComment from 17 Mar 2026 in “Java 26 is here, and with it a solid foundation for the future”

“especially with the low-latency ZGC garbage collector”

RecommendsComment from 17 Mar 2026 in “Java 26 is here, and with it a solid foundation for the future”

“Games today should be using ZGC.”

RecommendsComment from 16 Mar 2026 in “Jemalloc un-abandoned by Meta”

“you probably want ZGC (or Shenandoah) because latency is more important than throughput.”

RecommendsComment from 26 Feb 2026 in “Dissecting the CPU-Memory Relationship in Garbage Collection (OpenJDK 26)”

“which have very low pause times (in the order of 1 ms)”

RecommendsComment from 26 Feb 2026 in “Dissecting the CPU-Memory Relationship in Garbage Collection (OpenJDK 26)”

“If you've made that tradeoff for G1 because you wanted lower latency, you probably are going to be happier with ZGC.”

RecommendsComment from 25 Feb 2026 in “Dissecting the CPU-Memory Relationship in Garbage Collection (OpenJDK 26)”

“ZGC and G1 are fantastic engineering achievements for applications that require low latency”

RecommendsComment from 25 Feb 2026 in “Dissecting the CPU-Memory Relationship in Garbage Collection (OpenJDK 26)”

“read instructions translate to way more cpu instructions in the former”

CriticizesComment from 21 Nov 2025 in “Implementation of a Java Processor on a FPGA (2016)”

“It's also been a mixed bag, performance-wise.”

MixedComment from 2 Nov 2025 on Hacker News

Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.