# What changed in react-intersection-observer

> 13 changes in react-intersection-observer 10 to 11 from its official release notes, upgrade guides and advisories: 3 breaking, 4 new APIs and options. Each one cited. Sources checked 2026-10-18. HTML: https://unstale.sh/npm/react-intersection-observer/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## react-intersection-observer 11

### Fixes and other changes

- InView resumes observation when triggerOnce is disabled. (11.0.1) — [release notes](https://github.com/thebuilder/react-intersection-observer/releases/tag/v11.0.1)
- Callback ref cleanup compatibility is improved across React 17, 18, and 19. (11.0.0) — [release notes](https://github.com/thebuilder/react-intersection-observer/releases/tag/v11.0.0)
- Observation cleanup is now idempotent, making cleanup more resilient. (11.0.0) — [release notes](https://github.com/thebuilder/react-intersection-observer/releases/tag/v11.0.0)
- Thresholds are respected before trigger-once cleanup. (11.0.0) — [release notes](https://github.com/thebuilder/react-intersection-observer/releases/tag/v11.0.0)

## react-intersection-observer 10

### Breaking changes

- Ignores the browser’s initial `inView === false` emission for `onChange`; handlers fire only after a real visibility change, while subsequent transitions are still reported. (10.0.0) — [release notes](https://github.com/thebuilder/react-intersection-observer/releases/tag/v10.0.0)
- Ignores the browser’s initial `inView === false` emission for `onChange`; handlers fire only after a real visibility change, while subsequent transitions are still reported. (10.0.0) — [release notes](https://github.com/thebuilder/react-intersection-observer/releases/tag/v10.0.0)
- Ignores the browser’s initial `inView === false` emission for `onChange`; handlers fire only after a real visibility change, while subsequent transitions are still reported. (10.0.0) — [release notes](https://github.com/thebuilder/react-intersection-observer/releases/tag/v10.0.0)

### New APIs and options

- Adds support for the scrollMargin option for intersection observers. (10.1.0) — [release notes](https://github.com/thebuilder/react-intersection-observer/releases/tag/v10.1.0)
- Adds an exported helper type describing the new hook’s callback surface. (10.0.0) — [release notes](https://github.com/thebuilder/react-intersection-observer/releases/tag/v10.0.0)
- Adds an exported helper type describing the new hook’s options surface. (10.0.0) — [release notes](https://github.com/thebuilder/react-intersection-observer/releases/tag/v10.0.0)
- Adds a no-re-render hook that calls a callback with (inView, entry) and returns a ref, for tracking and other side-effect-heavy workloads. (10.0.0) — [release notes](https://github.com/thebuilder/react-intersection-observer/releases/tag/v10.0.0)

### Fixes and other changes

- Prevents callbacks from being skipped when triggerOnce is used with merged refs. (10.0.3) — [release notes](https://github.com/thebuilder/react-intersection-observer/releases/tag/v10.0.3)
- Fixes a React 17 webpack build error for useInsertionEffect. (10.0.2) — [release notes](https://github.com/thebuilder/react-intersection-observer/releases/tag/v10.0.2)
