Skip to content

Uploading files

How to upload

  1. Open a site from the map home screen
  2. Go to the Files tab
  3. Click Upload files or drag and drop files onto the upload area

All files must belong to a site — there is no workspace-level file inbox.

Upload methods

Drag and drop

Drag one or more files directly onto the Files tab. Multiple files can be uploaded simultaneously.

File picker

Click Upload files to open your system file browser. Select one or more files.

Large files

There’s no maximum file size. Large files keep going even if your connection drops — the upload picks up from where it left off when you’re back online. A progress bar shows you how far along you are.

Uploading ZIP archives

Swyvl inspects ZIP files automatically and routes them based on their contents. See Supported file formats for the full type matrix.

Extract or keep as a file

When you upload a ZIP, the upload modal shows a checkbox:

Extract ZIP contents as individual files

Checked by default — Swyvl extracts the contents and adds each file to the collection individually.

Uncheck it to keep the ZIP as a single downloadable file. This is useful when you want clients to download the bundle rather than view individual files.

3D Tiles ZIPs

  1. Locate your 3D Tiles output directory (the one containing tileset.json)
  2. Compress it as a .ziptileset.json should be at the root or one folder deep
  3. Upload the ZIP — Swyvl extracts it and opens the dataset on the 3D globe

Delivery packages (mixed ZIPs)

A ZIP of drone photos, videos, point clouds, or any mix of supported formats is treated as a delivery package. Each file is extracted and added to the same collection as an individual resource — with its own viewer, thumbnail, and metadata.

Sidecar pairing works inside ZIPs. If your ZIP contains flight.mp4 and flight.srt, they are automatically linked — the video opens in the split-screen GPS viewer.

Limits

ZIP typeMax filesMax size
3D Tiles50,0002 GB
glTF package500500 MB
Shapefile100500 MB
Delivery package50050 GB total

GPS and location sidecars

Swyvl automatically detects GPS data files uploaded alongside media and links them for location context. Three formats are supported.

DJI SRT — video GPS track

DJI drones record an .srt subtitle file alongside each .mp4 video containing GPS coordinates logged once per second.

How to upload: drag and drop the .mp4 and .srt files together (e.g. DJI_0042.mp4 + DJI_0042.srt). Filenames must share the same base name. Swyvl pairs them automatically, extracts the GPS track, and opens the video in the split-screen viewer — video on the left, live GPS map on the right.

Supported SRT formats:

  • Bracket format: [latitude : -33.123] [longitude : 151.095] [altitude: 92.5]
  • Inline format: GPS(-33.123, 151.095, 92.5)

GPX — photo geolocating and video GPS track

GPX files can be paired with media in two ways.

Filename match (upload together): photo.jpg + photo.gpx or flight.mp4 + flight.gpx uploaded in the same batch. The GPX is linked to the matching file and hidden from the Files tab once geolocating is complete.

Collection-wide geolocate (upload to same collection): upload a GPX file to any collection containing photos — filenames do not need to match. Swyvl reads the GPX track timestamps and interpolates a GPS position for every photo in the collection that has an EXIF capture date but no GPS location yet.

EXIF GPS (recorded by the camera itself) always takes precedence and is never overwritten by GPX interpolation.


DJI/Litchi CSV flight logs — photo geolocating

DJI Go 4, DJI Fly, and Litchi export CSV flight logs containing timestamped GPS telemetry. Upload the CSV to the same collection as your photos — Swyvl detects the lat/lng/timestamp columns automatically, interpolates GPS positions for all photos in the collection, and hides the CSV from the Files tab once complete.

Supported apps: DJI Go 4, DJI Fly, Litchi.


Works inside ZIPs too

Any ZIP delivery package assigns all extracted files the same internal ID, so sidecar detection runs automatically. An mp4 + .srt inside a ZIP opens in the split-screen GPS viewer without any extra steps.

What happens after upload

Once your file is uploaded, Swyvl automatically runs:

  1. Classification — identifies the file type using AI (LAS, KMZ, MP4, etc.) and detects sidecar relationships
  2. Metadata extraction — reads file headers for dimensions, coordinate system, capture date, GPS data, camera info, etc.
  3. Thumbnail generation — creates a preview image for the Files tab
  4. Viewer assignment — selects the correct in-browser viewer based on file type and metadata

This typically takes 10–60 seconds per file depending on size. Files show a “Processing” indicator until complete.

What metadata is extracted

File typeMetadata extracted
Images (JPG, PNG)Camera make/model, dimensions, capture date, GPS location, 360° detection
Video (MP4, MOV)Duration, camera make/model, embedded GPS track, 360° detection
LAS/LAZLAS version, point format, point count, bounding box, scale factors
GeoTIFFCRS/EPSG code, bounding box, georeferencing, band count, COG detection
PDFPage count
SRT/GPX sidecarsFull GPS track (lat, lng, altitude, timestamp per second)

Assigning to a collection

When uploading, you can assign files to a collection — a logical grouping of files captured at the same time (e.g. one drone flight, one scan day).

  • Select an existing collection from the dropdown, or
  • Type a new collection name to create it on upload

Files without a collection appear under “Deliverables” in share links.

Upload best practices

  • Use LAZ instead of LAS for point clouds — lossless compression reduces file sizes by 5–10x with no quality loss
  • Use GLB instead of OBJ for 3D models — GLB embeds textures in a single file
  • Upload SRT/GPX alongside video — always drop them together for automatic GPS pairing
  • Name files descriptively — clients see the original filename in share links
  • Use stable WiFi or ethernet for files over 1 GB
  • Group related files into collections — collections help clients understand what was captured when

File options and reprocessing

After a file is uploaded and processed, you can modify how it’s handled using the file detail panel (click any file in the Files tab to open it).

Viewer override

If Swyvl assigned the wrong viewer, use the Viewer dropdown in the detail panel to switch. For example, PLY files can be shown in the standard Gaussian splat viewer or the Spark viewer — select whichever works better for your file.

Reprocess with AI instructions

Click Reprocess in the detail panel to re-run the processing pipeline on a file. You can optionally provide plain-English instructions — Swyvl’s AI interprets them and applies the appropriate corrections:

What you can sayWhat it does
”The GPS is wrong, it should be at -33.86, 151.21”Corrects the GPS location permanently
”This file is in GDA94 / MGA Zone 55”Records the source CRS for reprojection
”Flip this splat upside down”Applies a vertical flip correction
”Skip the thumbnail”Skips thumbnail generation this run

Corrections (GPS, CRS) are saved and re-applied automatically on every future reprocess. You can remove a saved correction by opening the Reprocess panel and clicking the × next to it.

Trash

Files can be moved to Trash from the detail panel. Trashed files are not visible in share links. Access the Trash tab in the Site Hub to restore files (within 30 days) or permanently delete them.


Troubleshooting uploads

Upload stalled at 0% Check your network connection. If you’re on WiFi, try ethernet. Refresh and re-upload.

File stuck in “Processing” for over 15 minutes Processing failures are rare. Try re-uploading the file. If the issue persists, raise a support request from Settings → Support.

“Upload path not permitted” error This is a server-side error — please raise a support request with the filename and format.

File uploaded but no viewer Either the format isn’t supported for in-browser viewing (it can still be downloaded), or processing is still running. Wait a minute and refresh.

SRT/GPX not paired with video Make sure both files were uploaded in the same batch (dragged or selected together) and have matching filenames. If they were uploaded separately, delete both and re-upload them together.

ZIP extracted but some files are missing Files outside the supported type list (nested .zip files, .xlsx, .splz) are skipped. Files over the per-type size limit are also skipped (100 MB for images, 10 GB for video, 20 GB for point clouds). Check the file detail panel for any processing errors.

ZIP shows as “Delivery Package” but I can’t see the individual files The extracted files appear as separate items in the same collection. Scroll down or refresh the Files tab — they appear progressively as each file is processed.

I uploaded a ZIP but wanted to keep it as a single file Re-upload the ZIP with the “Extract ZIP contents as individual files” checkbox unchecked.

OBJ files from a ZIP look untextured Companion .mtl and texture files may not be linked automatically when extracted from a generic ZIP. For fully textured OBJ models, ensure the .mtl and textures are in the same ZIP alongside the .obj.

ZIP rejected during processing The archive may exceed the size limit (2 GB for 3D Tiles, 500 MB for glTF/shapefile), contain too many files, or have an unusually high compression ratio. Check the file detail panel for a specific error message. Re-upload a smaller archive if needed.

3D Tiles ZIP processed but viewer shows “still converting” indefinitely The ZIP may not contain a recognisable tileset.json at the root or one level deep, or no valid tile files (.b3dm, .pnts, etc.) were found. Check the file detail panel → Processing tab for the specific error. Ensure your 3D Tiles output directory is zipped correctly with tileset.json at the root or inside one root folder.

Want a walkthrough? Book a 30-min demo with Alex →