CocoaPods “could not find compatible versions”: align the constraints
Read which requirements conflict, refresh the spec repos, then align the version constraints.
No published combination of pod versions satisfies every requirement in the Podfile. Read the conflicting requirements in the full error, update the spec repos, then adjust the constraints or platform so a compatible set exists.
Try these fixes in order
Read every conflicting requirement
Read the complete error output, not just the first line. It names the pod and prints each version requirement with its source, such as a Podfile line or another pod's dependency.
Update the spec repos and retry
Refresh the local spec repositories with pod repo update, then run pod install again. A stale spec repo is a common cause when the requirements look reasonable.
pod repo updatepod installAlign the version constraints deliberately
If the conflict persists, align the constraints: widen an overly strict pin (for example ~> 1.2.3 to >= 1.2), update the pod that drags in the old dependency, or raise the platform version if pod releases require it.
Commit the resolved lockfile
After a successful resolution, review the Podfile.lock diff, commit both the Podfile and Podfile.lock, and rebuild. Keep the lockfile in version control so every machine resolves identically.
Interpret what you see
The error lists several version requirements for one pod
What it suggests: Two or more requirements on the same pod, or on its dependencies, demand mutually exclusive versions.
Next check: Read the full error: it lists each conflicting requirement and which pod or Podfile line introduced it.
The requirements look satisfiable but resolution still fails
What it suggests: CocoaPods resolves against its local spec repos; if they are outdated, newly published versions that would satisfy the constraints are invisible.
Next check: Run pod repo update (or pod install --repo-update) and retry before editing version constraints.
The conflict mentions platform or deployment target requirements
What it suggests: A platform line such as platform :ios, '13.0' can exclude pod versions that require a newer deployment target.
Next check: Compare the Podfile platform with the minimum iOS version of the pod releases you need.
Why this happens
- The Podfile's version requirements cannot all be satisfied at once by any published set of pod versions.
- The local spec repositories are stale, so CocoaPods cannot see newer pod versions that would resolve the conflict.
Still not working?
Pinning every pod to exact old versions or deleting Podfile.lock to silence the resolver trades a clear error for unpredictable builds. Read which requirements conflict, change the constraints deliberately, and keep the resolved lockfile under version control.
Official sources
These steps are based on the linked documentation and general diagnostics. BugMedic has not independently tested every product and system configuration. Review commands before running them.