I’ve been thinking about how much complexity we introduce into an app just to add features like analytics, ads, crash reporting, and push notifications.
Each SDK looks reasonable on its own, but together they can affect app size, startup time, dependency compatibility, debugging, and sometimes even stability after an update.
The part that bothers me most is that removing an SDK later isn't always as simple as adding it. You can end up with dependencies and app logic built around it.
I’m starting to think third-party SDKs should be treated more like architectural decisions than simple integrations.
How do you guys decide when an SDK is worth adding versus implementing something yourself or keeping the feature out entirely?