It seems like there is no maximum limit to a BigInt as per spec, which makes sense considering BigInts are supposed to be arbitrary-precision integers, whose "digits of precision are limited only by the available memory of the host system".

As for v8 specifically, according to this article on the v8 blog, the precision of BigInts are "arbitrary up to an implementation-defined limit". Unfortunately, I couldn't find any further information on how the limit is determined. Maybe someone else would be able to shed light on this based on these v8 BigInt implementation notes?

That said, based on the aforementioned articles, there doesn't seem to be a specific maximum value/size for a BigInt. Rather, it is likely determined based on the available memory on the system in some way.

Answer from zwliew on Stack Overflow
🌐
MDN Web Docs
developer.mozilla.org › en-US › docs › Web › JavaScript › Reference › Global_Objects › BigInt
BigInt - JavaScript | MDN
The resulting primitive is then converted to a BigInt. The best way to achieve nearly the same effect in JavaScript is through the BigInt() function: BigInt(x) uses the same algorithm to convert x, except that Numbers don't throw a TypeError, but are converted to BigInts if they are integers.
🌐
W3Schools
w3schools.com › js › js_bigint.asp
JavaScript BigInt
BigInt is a JavaScript data type for handling and storing big integer values. BigInt allows you to work with integers larger than the limit of Numbers. BigInt can represent an integer of any size, limited only by available memory.
🌐
GeeksforGeeks
geeksforgeeks.org › javascript › javascript-bigint
JavaScript BigInt - GeeksforGeeks
December 4, 2025 - JavaScript BigInt is a built-in object that represents whole numbers larger than (2^{53} - 1). A BigInt value, also known as a bigint primitive, is created by appending n to an integer literal or by calling the BigInt() function with an integer ...
🌐
Smashing Magazine
smashingmagazine.com › 2019 › 07 › essential-guide-javascript-newest-data-type-bigint
The Essential Guide To JavaScript’s Newest Data Type: BigInt — Smashing Magazine
The BigInt data type aims to enable JavaScript programmers to represent integer values larger than the range supported by the Number data type. The ability to represent integers with arbitrary precision is particularly important when performing mathematical operations on large integers.
🌐
JavaScript.info
javascript.info › tutorial › the javascript language › miscellaneous
BigInt
BigInt is a special numeric type that provides support for integers of arbitrary length.
🌐
MDN Web Docs
developer.mozilla.org › en-US › docs › Web › JavaScript › Reference › Global_Objects › BigInt › BigInt
BigInt() constructor - JavaScript | MDN
A BigInt value. Number values must be integers and are converted to BigInts. The boolean value true becomes 1n, and false becomes 0n.
🌐
Scaler
scaler.com › home › topics › javascript bigint library
JavaScript BigInt Library - Scaler Topics
September 29, 2023 - The BigInt is a library in JavaScript that is used to store and represent numbers that are bigger than 15 digits in length. As we know in javascript, the maximum length of an integer that can be stored in a variable is 15 digits.
Find elsewhere
🌐
GeeksforGeeks
geeksforgeeks.org › bigint-in-javascript
BigInt in JavaScript - GeeksforGeeks
June 25, 2020 - BigInt is a built-in object in JavaScript that provides a way to represent whole numbers larger than 253-1. The largest number that JavaScript can reliably represent with the Number primitive is 253-1, which is represented by the MAX_SAFE_INTEGER ...
🌐
LogRocket
blog.logrocket.com › home › how to use javascript’s bigint
How to use JavaScript's BigInt - LogRocket Blog
June 4, 2024 - Bigint can be used to represent and perform operations on any size of integer except floats or decimals including numbers greater than 9,007,199,254,740,991 or less than -9,007,199,254,740,991.
🌐
V8
v8.dev › features › bigint
BigInt: arbitrary-precision integers in JavaScript · V8
BigInts are a new numeric primitive in JavaScript that can represent integers with arbitrary precision. With BigInts, you can safely store and operate on large integers even beyond the safe integer limit for Numbers.
🌐
GitHub
github.com › tc39 › proposal-bigint › issues › 174
Is the maximally allowed BigInt specified? · Issue #174 · tc39/proposal-bigint
November 9, 2018 - I happened to notice that chrome happens to throw when the result of a BigInt arithmetic operation is too large. Is the exact maximal value specified/documented/available anywhere? (And does anyone else think that needing to wrap all my ...
Author   weswigham
🌐
Exploring JS
exploringjs.com › js › book › ch_bigints.html
Bigints – arbitrary-precision integers ES2020 (advanced) • Exploring JavaScript (ES2025 Edition)
Due to these integers having a fixed size, their highest bits indicate their signs: > 2**31 >> 0 // highest bit is 1 -2147483648 > 2**31 - 1 >> 0 // highest bit is 0 2147483647 · For bigints, bitwise operators interpret a negative sign as an infinite two’s complement – for example:
🌐
Snowfrog's blog
blog.snowfrog.dev › bigint-math
Using Math on BigInt
July 2, 2019 - As you may know, the largest number ... is BigInt. BigInt is a built-in object that provides a way to represent whole numbers larger than 253....
🌐
Medium
medium.com › @adeyemimuaz1 › mastering-bigint-in-javascript-handling-large-integers-with-ease-d6475647c519
Mastering BigInt in JavaScript: Handling Large Integers with Ease. | by Adeyemi Muaz Ayomide | Medium
April 26, 2024 - Press enter or click to view image in full size · JavaScript’s Big Integer — BigInt- is a new feature introduced with ES2020. It is a primitive data type representing whole numbers larger than (2⁵³- 1). This is the largest number that ...
🌐
TC39
tc39.es › proposal-bigint
BigInt
The BigInt type represents a mathematical integer value. The value may be any size and is not limited to a particular bit-width. Generally, where not otherwise noted, operations are designed to return exact mathematically-based answers.
🌐
TutorialsPoint
tutorialspoint.com › home › javascript › javascript bigint: handling large integers
JavaScript BigInt: Handling Large Integers
September 1, 2008 - Learn how to use JavaScript's BigInt for handling large integers, including its syntax, advantages, and examples.
🌐
Mozilla
developer.mozilla.org › en-US › docs › Web › JavaScript › Guide › Data_structures
JavaScript data types and data structures - JavaScript | MDN
It may be necessary to use such ... should only be considered when it is the last measure that can be taken to optimize size. The BigInt type is a numeric primitive in JavaScript that can represent integers with arbitrary magnitude....
🌐
Webdevtutor
webdevtutor.net › blog › javascript-bigint-size
Mastering JavaScript Bigints: Understanding the Size and Capabilities of Large Integers
BigInts are a new primitive data type in JavaScript that can represent 2^53-1, a much larger range than the traditional Number type. They provide a way to work with very large integers without worrying about overflows or underflows. One of the key differences between regular integers and BigInts ...
🌐
web.dev
web.dev › learn › javascript › data-types › bigint
BigInt | web.dev
BigInt primitives are a relatively new addition to JavaScript, allowing mathematical operations on numbers outside the range allowed by Number.