diff --git a/vde_temp_files_fix/vde_temp_files_fix.info b/vde_temp_files_fix/vde_temp_files_fix.info
new file mode 100644
index 0000000..cb3b5a8
--- /dev/null
+++ b/vde_temp_files_fix/vde_temp_files_fix.info
@@ -0,0 +1,3 @@
+name = Views Data Export temporary files fix
+description = Makes large files created via views_data_export batches temporary so cron can eventually remove them.
+core = 7.x
diff --git a/vde_temp_files_fix/vde_temp_files_fix.module b/vde_temp_files_fix/vde_temp_files_fix.module
new file mode 100644
index 0000000..ea63de5
--- /dev/null
+++ b/vde_temp_files_fix/vde_temp_files_fix.module
@@ -0,0 +1,13 @@
+<?php
+
+/**
+ * Implements hook_file_presave().
+ */
+
+function vde_temp_files_fix_file_presave($file) {
+  $identifier = 'views_data_export';
+  if(strpos($file->filename, $identifier) === 0){
+    // D7 has no FILE_STATUS_TEMPORARY defined - https://www.drupal.org/node/1659116;
+    $file->status = 0;
+  }
+}
\ No newline at end of file
