MotoDealerHQ

Storage and media retention

Monitor media storage across dealerships, set platform defaults for photo retention and size, run a cleanup dry run, and understand which storage options are live.

Last updated For MotoDealerHQ operators Documentation for MotoDealerHQ 1.0.0-beta.1 “Assen”

Vehicle photos, website images, attachments and video links all count toward media storage. The Storage page shows how much each dealership uses and how much the photo-retention cleanup has recovered. Platform defaults for retention and photo size are set in the control panel.

Read the Storage page #

  1. Open Operations › Storage.
  2. Narrow the figures with the filters: Dealership, Rooftop, Inventory status, Media type and a date range (From / To). Select Apply.

The page shows:

  • storage used, image count and video link count;
  • media for active inventory versus sold and archived inventory;
  • vehicles awaiting expiration under their retention policy;
  • images deleted this month (or in the chosen range) and the estimated storage recovered;
  • attachments;
  • a By dealership table with images, image storage, attachments, video links and vehicles awaiting expiration;
  • Cleanup runs, with vehicles and images processed, files skipped (held, shared or still active), missing files, errors and space recovered. Select a run to see each decision.

Set platform defaults #

  1. Open Security & settings › Control panel and go to Media and storage.
  2. Set:
    • Default: keep photos of sold, removed and archived vehicles for: 7, 14, 30, 60, 90 (recommended, the default), 180 or 365 days, or forever.
    • Default maximum photo size in pixels (longest side, 800 to 4000; default 2400).
  3. Select Save media settings.

Dealerships can override both under Settings › Storage & media, and a dealership can set a different retention period per rooftop. Changing any setting recalculates every pending countdown.

How photo retention works #

  • The countdown starts when a vehicle becomes sold, removed by an import, or archived. Moving it back to draft, available or pending cancels it.
  • An hourly cleanup task deletes photos whose time is up. Before each deletion it re-checks that the vehicle is still sold or archived, the policy still says it has expired, the dealership allows background work, no hold applies, and the file isn't used anywhere else.
  • Holds stop deletion: vehicles with an unresolved deal or deposit, and vehicles in active auctions, disputes or unsettled auction sales.
  • The vehicle record and all its details stay. Pages show "Images removed according to dealership media retention policy." instead of a broken image.

Run a dry run #

  1. On Operations › Storage, under Cleanup runs, select Dry run.
  2. The run evaluates the current settings and records what it would delete, without deleting anything.
  3. Open the run to review the decisions.

Operators can also run the cleanup from the server: php bin/console media:cleanup --dry-run (add --tenant= to limit it to one dealership).

Storage options and their status #

OptionStatus
Local disk storageLive
S3-compatible storage (AWS, R2, B2, MinIO, Wasabi)Not live: requires MEDIA_STORAGE_DRIVER=s3 and bucket credentials in .env, plus outbound connections switched on
CDN in front of mediaBuilt, off by default (MEDIA_CDN_BASE_URL)
Malware scanning with ClamAVNot live: needs a ClamAV socket (MEDIA_CLAMAV_SOCKET); files are recorded as "not scanned"
YouTube Data API channel pickerNot live

These storage settings are server .env only; they can't be changed from the console.

Tips #

  • Run a dry run after changing the platform default, before the next hourly cleanup, to see the effect.
  • Watch Vehicles awaiting expiration to anticipate how much space the next weeks will recover.
  • A daily usage snapshot is recorded per dealership for future quotas.

Permissions #

Limitations #

Screenshots show the fictional demo dealership. Something unclear or out of date? Tell your MotoDealerHQ contact or email support@motodealerhq.com.

v1.0.0-beta.1 “Assen”