{
  "slug": "piwigo",
  "category": "photo-management",
  "name": "Piwigo",
  "description": "Photo gallery software for publishing and managing large photo collections on the web, with albums, tags, user permissions, plugins and mobile apps. It can be self-hosted or used as a paid hosted service from its developers.",
  "website": "https://piwigo.org",
  "source": "https://github.com/Piwigo/Piwigo",
  "license": "GPL-2.0",
  "platforms": [
    "web",
    "android",
    "ios"
  ],
  "jurisdiction": {
    "code": "FR",
    "name": "France",
    "eyes": "Nine Eyes",
    "eu": true,
    "gdpr": true,
    "cloud_act": null
  },
  "pick": false,
  "pick_reason": null,
  "disclosure": null,
  "grade": "C",
  "score": 65,
  "coverage": 100,
  "summary": "Piwigo scores 65 out of 100 (grade C) on the photo management criteria. It meets 2 of 4 criteria: open source and no ads or data sales. It partly meets no trackers or telemetry. It does not meet independent audit. It is based in France: Nine Eyes member; EU member (GDPR).",
  "url": "https://privacyratings.com/photo-management/piwigo/",
  "markdown": "https://privacyratings.com/photo-management/piwigo/index.md",
  "answers": {
    "open_source": {
      "title": "Open source",
      "weight": 3,
      "answer": "yes",
      "evidence": "https://github.com/Piwigo/Piwigo/blob/master/LICENSE.txt",
      "note": "GPL-2.0."
    },
    "no_trackers": {
      "title": "No trackers or telemetry",
      "weight": 3,
      "answer": "partial",
      "evidence": "https://github.com/Piwigo/Piwigo/blob/master/include/config_default.inc.php",
      "note": "No third-party trackers on the website or in the software, but self-hosted installs send anonymous technical data and statistics to piwigo.org weekly by default, which can be turned off in the configuration."
    },
    "no_ads": {
      "title": "No ads or data sales",
      "weight": 2,
      "answer": "yes",
      "evidence": "https://doc.piwigo.org/legal/privacy/",
      "note": "Funded by subscriptions to the hosted service, with no ads. The privacy policy states personal information is not rented or sold."
    },
    "independent_audit": {
      "title": "Independent audit",
      "weight": 2,
      "answer": "no",
      "evidence": null,
      "note": "No independent audit is published."
    },
    "transparency_report": {
      "title": "Transparency report",
      "weight": 2,
      "answer": "n/a",
      "evidence": null,
      "note": "Only applies to hosted services with a website to test."
    },
    "user_notice": {
      "title": "Tells users about requests",
      "weight": 1,
      "answer": "n/a",
      "evidence": null,
      "note": "Only applies to hosted services with a website to test."
    },
    "tls": {
      "title": "TLS configuration",
      "weight": 2,
      "answer": "n/a",
      "evidence": null,
      "note": "Only applies to hosted services with a website to test."
    },
    "security_headers": {
      "title": "Security headers",
      "weight": 1,
      "answer": "n/a",
      "evidence": null,
      "note": "Only applies to hosted services with a website to test."
    },
    "web_standards": {
      "title": "Modern web standards",
      "weight": 1,
      "answer": "n/a",
      "evidence": null,
      "note": "Only applies to hosted services with a website to test."
    }
  },
  "tests": {
    "ssllabs": null,
    "observatory": null,
    "internetnl_web": null,
    "internetnl_mail": null,
    "trackers": [],
    "tested_at": "2026-10-01T07:00:03.376Z"
  },
  "last_modified": "2026-10-01T07:44:20Z"
}