You added a useLayoutEffect to measure a tooltip, shipped it, and the next time your Next.js (or Remix, or Gatsby) dev server rendered a page on the server, the console lit up:

Warning: useLayoutEffect does nothing on the server, because its effect cannot

be encoded into the server renderer's output format. This will lead to a

mismatch between the initial, non-hydrated UI and the intended UI. To avoid

this, useLayoutEffect should only be used in components that render exclusively