The direct answer
SnapAction has a local storage layer and a cloud-assisted analysis layer. Those two pieces should not be mixed together.
After a scan, analyzed resource records are stored locally on iPhone with SwiftData. During a scan, selected screenshots are sent to SnapAction backend services for AI analysis, and Serper search may be used when a canonical URL needs to be recovered.
What stays local
SnapAction uses SwiftData for the resource library after analysis. That local library can include cards, titles, URLs when found, tags, metadata, linked screenshot references, favorite state, read state, and scan records.
What uses backend processing
The screenshot analysis itself is cloud-assisted. Selected screenshot image data is sent to the backend so the system can identify the primary resource and return structured output. Missing-link recovery may also use web search.
Accurate privacy language
Use this framing: SnapAction stores analyzed resource cards locally, but scanning requires backend AI analysis. Do not describe SnapAction as fully offline, fully on-device, or as a product where screenshots never leave the device.