BASE fits data where a few seconds of staleness costs nothing: social media feeds, view counts, product catalogs, session stores, shopping carts, IoT telemetry, and analytics. These workloads value being always-on and globally fast over being perfectly current.
Avoid BASE where a stale read causes real harm. Bank account balances, inventory at the moment of checkout, seat reservations, and anything with a uniqueness rule usually need ACID transactions and strong consistency. Reading an old balance can let a customer overdraw or double-spend.
The hidden cost of BASE is in your application code. Because the database no longer hides inconsistency, you have to design for it: handle the case where two devices wrote different values, make operations idempotent so retries are safe, and decide what to show a user who reads before replication finishes. The CAP theorem frames the choice plainly: during a network partition you pick availability (BASE) or consistency (ACID), not both.