Methods and systems for enabling an application to track provenance information include analyzing an application binary to discover injection points for provenance tracking code; overwriting instructions in the application binary at the injection points to create an instrumented application, where the overwritten instructions link the application binary to one or more instrumented libraries that invoke a provenance layer to track data operations; and deploying the instrumented application on a client device.