Lossy Compression Service

🔓
Now Open Source!
Try our 100% client-side version that runs entirely in your browser. No uploads, works offline, and fully open source.
🚀 Try Client Version View on GitHub

Compress JSON, CSV, JavaScript, and other file types with customizable loss levels.

⚠️
Important: Lossy compression permanently removes data to reduce file size. Always thoroughly test compressed files in your development and staging environments before using in production to ensure functionality remains intact.
📦
Drop file here or click to upload
Supported: JSON, CSV, JavaScript, HTML, CSS, SQL, XML, YAML, SVG, Markdown, Text
Max 10MB per file
⏳ Analyzing file...

Compression Options

💡 Changes will automatically update the preview below. Adjust options to see their impact on compression.

Compression Preview

Minimal

-
-
Safe optimizations only

Moderate

-
-
Balanced approach

Aggressive

-
-
Maximum compression
💡 Click a level above to see what changes

Compression Results

-
Original Size
-
Compressed Size
-
Reduction

Optimizations Applied:

    API Endpoints

    POST /api/compress
      - Upload and compress files
    
    POST /api/compress/batch
      - Compress multiple files (up to 10) in one request
      - Returns summary statistics and individual results
    
    POST /api/analyze
      - Preview compression for a single file
    
    POST /api/analyze/batch
      - Preview compression for multiple files (up to 10)
      - See all 3 compression levels before compressing
    
    GET /api/options/:fileType
      - Get compression options for file type
    
    GET /api/download/:fileId
      - Download compressed file
    
    GET /api/manifest/:manifestId
      - Download recovery manifest (shows what was changed)
    
    GET /api/health
      - Service health check
          

    Batch API Examples

    Compress multiple files in one request:

    curl -X POST https://l0ss.com/api/compress/batch \
      -F "files=@file1.json" \
      -F "files=@file2.csv" \
      -F "files=@file3.js" \
      -F "loss_level=moderate"

    Preview compression for multiple files:

    curl -X POST https://l0ss.com/api/analyze/batch \
      -F "files=@data1.json" \
      -F "files=@data2.json" \
      -F "files=@data3.json"

    Response Format:

    {
      "status": "success",
      "message": "Processed 3 files",
      "summary": {
        "total_files": 3,
        "successful": 3,
        "failed": 0,
        "total_original_size": 15234,
        "total_compressed_size": 8421,
        "average_reduction": 44.7,
        "processing_time_ms": 142
      },
      "results": [
        {
          "filename": "file1.json",
          "status": "success",
          "file_id": "file_abc123",
          "original": { "size": 5234, "filename": "file1.json" },
          "compressed": { "size": 2891, "reduction": 44.8 },
          "download_url": "/api/download/file_abc123",
          "recovery": {
            "manifest_id": "rec_xyz789",
            "download_manifest": "/api/manifest/rec_xyz789"
          }
        }
      ]
    }