Guide
How to read a ProofSnap evidence package
A ProofSnap evidence package (2026 edition) is one ZIP per captured web page: evidence.pdf to read first, the screenshot and page files, metadata and a chain of custody, a manifest of SHA-256 hashes signed with RSA-4096 and timestamped where the plan includes it, and scripts that let anyone check that nothing was changed.
You captured a web page as digital evidence, or someone sent you a ProofSnap ZIP. This guide explains every file in it, walks through the evidence document section by section, and shows how to check the package and what to hand to a lawyer or a court.
Open first
evidence.pdf
Hand over
The whole ZIP, unchanged
Check it with
verify.sh, verify.ps1 or the Trust Verifier
By Radim Motycka, Founder and Lead Engineer at ProofSnap, who built the capture pipeline, the evidence PDF and the verification scripts this guide walks through. ·
Who this guide is for
- You made a capture and want to know what you are handing over.
- You are a lawyer, expert or judge who received a ProofSnap ZIP.
- You need to find one fact fast: the time, the URL, the server, the custodian.
Making a capture? See How to capture a web page.
Part 1
What is in the ZIP
A web capture arrives as one ZIP with a name such as proofsnap_20261014_153012.zip, built from the local date and time on your computer when the download link appeared. The files fall into four groups. The exact list depends on the plan and on the options switched on, so two packages can differ.
- 1Read.
evidence.pdfis the document for people: open it first.provenance_certificate.pdfis a one-page summary of the checks. The full screenshot isscreenshot.jpeg. The HTML as the browser rendered it ispage.html, a single-file archive of the page as it stood at capture time ispage.mhtml, and its text isdomtextcontent.txt.images.jsonlists the page's images, with the SHA-256 hash of each image file saved in the package. Those files are in theimages/folder, taken from the MHTML archive when it holds any. - 2Record.
metadata.jsonis the technical record of the page and the browser,chain_of_custody.jsonandforensic_log.jsondocument who captured what, when and how, andforensic_log_summary.txtis the log in plain text. See parts 9 and 10. - 3Seal.
manifest.jsonlists the capture files with their hashes,manifest.sigis its RSA-4096 signature andpublickey.pemthe key to check it.manifest.json.otsis the Bitcoin timestamp (OpenTimestamps). See part 11. - 4Check. The
verification/folder hasverify.shfor macOS and Linux,verify.ps1for Windows and a plain-text guide. See part 12.
- 1evidence.pdf
- provenance_certificate.pdf
- screenshot.jpeg
- page.html
- page.mhtml
- domtextcontent.txt
- images.json
- images/
- 001_lamp-front.jpg
- 002_lamp-side.webp
- 2metadata.json
- chain_of_custody.json
- forensic_log.json
- forensic_log_summary.txt
- 3manifest.json
- manifest.sig
- publickey.pem
- manifest.json.ots
- 4verification/
- verify.sh
- verify.ps1
- VERIFICATION_GUIDE.txt
Part 2
Files that appear only in some captures
These files are in the package only when the option was on or the data was available. When one is missing, nothing is wrong: the capture simply did not include it.
- 1US court certification.
rule_902_certification.pdf, a declaration template for United States federal courts with the capture details filled in. Available on every plan, and added only when the person making the capture switched it on. Always in English. See part 13. - 2C2PA Content Credentials.
c2pa.jsonis the sidecar of the Content Credentials manifest embedded inscreenshot.jpeg. - 3eIDAS.
manifest.json.tsris the EU qualified timestamp from Disig a.s., a Qualified Trust Service Provider on the EU Trusted List, andeidas_validation.jsoncarries the certificate chain and revocation data needed to check it offline. - 4Video.
capture_video.webmorcapture_video.mp4, the screen recording of the capture. - 5Forensic mode.
capture.warc(network archive),network.har(every request and response),resources.jsonwith aresources/folder of the loaded files, andcertificate_details.jsonwith the TLS certificate details of an HTTPS page. Forensic mode comes with the Professional, Enterprise and Company plans; see how to use forensic mode.
A session capture (multi-tab mode) adds a tabs/ folder with one subfolder per visited tab. Each holds its own screenshot, HTML, text, metadata, chain of custody and a shorter Per-Tab Evidence Record PDF. The root evidence.pdf covers the primary tab and lists the whole session.
| File | Description | Action |
|---|---|---|
| evidence.pdf | Evidence document | ![]() |
| provenance_certificate.pdf | Provenance Certificate | ![]() |
| 1rule_902_certification.pdf | Court certification (FRE 902) | ![]() |
| screenshot.jpeg | Screenshot | ![]() |
| 2c2pa.json | C2PA Content Credentials | ![]() |
| page.html | HTML content | ![]() |
| page.mhtml | MHTML page archive | ![]() |
| domtextcontent.txt | Text content | ![]() |
| metadata.json | Metadata | ![]() |
| forensic_log.json | Forensic Log (ISO 27037) | ![]() |
| chain_of_custody.json | Chain of Custody | ![]() |
| manifest.json | List of files & hashes | ![]() |
| manifest.sig | Manifest signature | ![]() |
| publickey.pem | Public key | ![]() |
| manifest.json.ots | OpenTimestamps | ![]() |
| 3manifest.json.tsr | EU Qualified Timestamp (RFC 3161 TSR) | ![]() |
| eidas_validation.json | eIDAS Long-Term Validation data (cert chain, OCSP) | ![]() |
| 4capture_video.webm | Capture video recording | ![]() |
| 5capture.warc | Network archive (WARC) | ![]() |
| network.har | Network log (HAR) | ![]() |
| resources.json | Archived sub-resources | ![]() |
| certificate_details.json | TLS certificate details | ![]() |
| forensic_log_summary.txt | Forensic log summary | ![]() |
Part 3
evidence.pdf, page 1: the summary and the screenshot
The evidence document is written in the evidence language chosen before the capture, which can be any of 29 languages. Its sections are numbered from 1 to 15, and the numbers never change, so a lawyer can cite a section of the evidence document by its number in any exhibit. Page 1 opens with the header and a summary box, then goes straight to the screenshot.
- 1Summary box. Domain of the page, capture Time in UTC, User (the custodian ID of the account and the IP address it captured from) and Hash, the SHA-256 of
page.html. When an EU qualified timestamp was requested, an eIDAS row says it applies if the eIDAS files are in the package. - 21. Page Screenshot. The page itself, first, because it is the exhibit. Everything after it supports it.
- 3The blue band. ProofSnap adds a band to the top of the screenshot with the URL, the UTC time, the NTP offset and the evidence ID, labeled as an annotation, not the browser address bar. The note under the file name says so and states that the page content below it is unmodified.
- 4Footer on every page. Tool and version, a link to getproofsnap.com, the full evidence ID and Page X / Y, so a printed copy cannot lose or swap a page unnoticed.

1. Page Screenshot:2
Below is a visual capture of the web page at the time of snapshot.
Screenshot file: screenshot.jpeg
The blue band at the top of this image is an annotation added by ProofSnap software, not a capture of the browser address bar. It restates the captured page URL, the UTC capture time and the evidence ID recorded elsewhere in this package. ...3
https://example-shop.com/listing/4821
2026-10-14T15:30:12Z (UTC) NTP offset +38 ms
ID ps_3f9c2a71-8e4b-4d1a-b6f0-5c27e9a1d304
Vintage desk lamp
Listing #4821 · posted by seller_77
$120
Part 4
End of the screenshot and the Evidence Verification summary
A long page runs over several PDF pages. After the screenshot comes a plain-language summary meant for a judge or a client who will not read the technical sections.
- 1Truncation notice. The PDF shows the start of the screenshot under its heading and at most 10 further pages. When the page is longer, a note says how many pages are shown and that the complete image is
screenshot.jpeg, which is what the hashes and the signature cover. - 2Evidence Verification. One paragraph stating what the document is, with the source URL and capture time repeated.
- 3What was verified. Short bullet points. Each bullet appears only when it is true for this capture. The live-page line needs a fresh server response; the tool line needs a store installation and a passed device check.
- 4Legal basis. A neutral paragraph on the integrity checks that names no national law. When an EU qualified timestamp was requested, a further paragraph on the qualified timestamp follows. Then come the verification links.
Screenshot truncated - showing first 10 of 14 pages. The complete screenshot is available in the screenshot.jpeg file included in the evidence package.1
End of Page Screenshot Section. Note: the image reproduced above may have been shortened to keep this document to a workable size. The screenshot as it was recorded is the file screenshot.jpeg in this evidence package, and that file is what the hash values and the signature cover.
Evidence Verification2
This is verifiable digital evidence. ProofSnap captured the page below at the stated time; any later modification is detectable. Its authenticity can be verified independently.
Source URL: https://example-shop.com/listing/4821
Time: 2026-10-14T15:30:12Z (UTC)
What was verified3
• The page was genuinely live at capture: the server responded and the connection was secured (TLS).
• The content is unchanged since capture: protected by a SHA-256 cryptographic hash; any modification is detectable.
• The package is protected against substitution by an RSA-4096 digital signature: any modification after signing is detectable.
• Captured with a verified, unmodified tool: extension and device integrity were confirmed.
The paragraphs below describe technical properties, not a legal opinion. ProofSnap does not give legal advice and does not determine before which court or tribunal this record will be produced.4
Legal basis: these cryptographic properties (SHA-256 hash, digital signature, independent timestamp and chain of custody) are designed to support the authentication of electronic records. Admissibility is determined by the competent court under the applicable rules of evidence.
This summary verifies the technical integrity of the capture; it does not assess the truth of the page's content.
Verify online: getproofsnap.com/verify/index.html
Verify source code (MIT): github.com/proofsnap/proofsnap-verify
Part 5
Sections 2 to 5: what, when, who and with what
These sections identify the evidence and the circumstances of the capture.
- 12. Evidence Identification. Evidence ID, source URL, page title, timestamp, the case reference, examiner and note when they were entered, the standard followed and the hash of the page HTML.
- 23. Time Verification. The capture time corrected by NTP, the time server, the offset of the computer clock and how many time sources agreed.
- 3Capture context. Referrer (how the browser got to the page), the full user agent and the operating system.
- 4Custodian and browser state. The custodian ID, IP address, browser and timezone. The email address of the account is not printed; its SHA-256 hash is in
chain_of_custody.json. Up to five entries per cookie or storage store follow, shortened. Values whose names suggest tokens or sessions are withheld. The complete set is inmetadata.json. - 54. Device Integrity and 5. Extension Integrity. Signs of an automated or headless browser, an integrity score, and the identity and version of the extension that made the capture.
2. Evidence Identification1
Evidence ID: ps_3f9c2a71-8e4b-4d1a-b6f0-5c27e9a1d304
Source URL: https://example-shop.com/listing/4821
Page Title: Vintage desk lamp · Example Shop
Timestamp (UTC): 2026-10-14T15:30:12Z (UTC)
Case / Matter: 2026-CV-01234
Examiner: Jane Doe, Forensic Examiner
Standard: ISO/IEC 27037:2012
Page HTML Hash (SHA-256): e5e239560bc125a20ff2ac1fea50915bc198dd4f5b5256ec447a8a71e00132b3
3. Time Verification2
NTP Timestamp (UTC): 2026-10-14T15:30:12Z (UTC)
NTP sync time (UTC): 2026-10-14T15:29:58Z (UTC)
NTP Source: NTP:time.google.com
Time Offset: 38 ms
NTP Latency: 61 ms
Cross-Verification: verified (3 of 3 sources agreed, max diff 41 ms)
Referrer: Direct navigation (no referrer)3
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36
Operating System: macOS
Custodian ID: Xq7LmR2vTn9KpB4sWc1YhZ8dFa634
Pseudonymous identifier of the ProofSnap account that performed the capture. The account email address is not printed in this package; its SHA-256 hash is recorded in chain_of_custody.json, so the custodian can be identified on request.
IP Address: 203.0.113.42
Browser: Chrome 141
Timezone: Europe/London
Session Cookies:
cookie_consent: accepted
session_id: [REDACTED FOR PRIVACY]
Local Storage:
recently_viewed: ["4821","4790"]
Each store is listed up to its first 5 entries, and any value longer than 50 characters is shortened and marked as such. Values whose name contains token, auth, jwt, session, key or secret are withheld. The complete, untruncated set is preserved in metadata.json ...
4. Device Integrity5
Integrity Score: 100/100
Status: passed
Headless Browser: No
WebDriver Detected: No
Automation Indicators: None detected
5. Extension Integrity
Extension ID: mfbhmfinogdedlgaoihbnmbldpabdhao
Extension Version: 1.19.5
Manifest Version: 3
Part 6
Sections 6 to 11: files, text, connection and domain
The technical body of the document. A section with no data for this capture keeps its heading with a short note that it is empty, so the numbering stays the same.
- 16. Evidence Package Files. SHA-256 hashes of the main files, and details of the video when one was recorded. The PDF cannot list its own hash;
manifest.jsonhas all of them. - 27. Page text. Points to
domtextcontent.txtand warns that its order follows the page source, so it should be read together with the screenshot. - 38. TLS/SSL. Whether the connection was encrypted with TLS. The browser does not give an extension the protocol version, the cipher or the certificate, so those rows read Not available via browser API. The connection and certificate details (protocol, cipher, issuer, subject, validity, alternative names) are captured only in forensic mode, in
certificate_details.json. - 49. DNS. The IP addresses the domain resolved to, checked against two DNS resolvers, and the DNSSEC status.
- 510. HTTP Response Headers. The server's answer to the page request: status code, when and how the headers were captured, and the key headers.
- 611. WHOIS/RDAP. Registrar, registration and expiry dates, name servers and the registrant, often redacted under the GDPR.
6. Evidence Package Files1
metadata.json: ea3bd73e2b506e00527232b3ed743c066da83a8e3066f62a71e75eb9b4aa1db6
page.html: e5e239560bc125a20ff2ac1fea50915bc198dd4f5b5256ec447a8a71e00132b3
screenshot.jpeg: 8dccea5217902053b636f0e105c590eb30db4280b8a7a51806110f7ff7b5177e
domtextcontent.txt: 486b9a6fc855abf48847e9639f3c090855c6aafdc22a13b10e3244c37f03d3e0
Only the primary evidence files are listed above; the package contains additional files. All evidence file hashes are listed in manifest.json and cryptographically signed via manifest.sig (RSA-4096 PKCS#1 v1.5). ...
7. Page text2
The text of the captured page is preserved in domtextcontent.txt inside this evidence package. Its SHA-256 hash is listed in manifest.json and is covered by the manifest signature, so any alteration of the text causes verification against the signed manifest to fail.
The file holds the text in the order in which the elements appear in the page source, which on some pages differs from the order in which they are displayed on screen. ...
8. TLS/SSL SECURITY INFORMATION3
Protocol: Not available via browser API
Cipher Suite: Not available via browser API
Certificate Details:
Issuer: Not available via browser API
Note: the browser API does not expose full certificate details. See metadata.json for all available TLS data.
9. DNS RESOLUTION VERIFICATION4
Hostname: example-shop.com
Resolved IPs: 198.51.100.17
Verification: verified (2 of 2 sources agreed)
DNSSEC Validation: Not signed
10. HTTP RESPONSE HEADERS5
Request URL: https://example-shop.com/listing/4821
Status Code: 200
Capture Source: navigation_refresh
Captured At: 2026-10-14T15:30:05Z (UTC)
Key Security & Server Headers:
server: nginx
strict-transport-security: max-age=31536000
last-modified: Tue, 14 Oct 2026 09:12:44 GMT
11. DOMAIN REGISTRATION (WHOIS/RDAP)6
Domain: example-shop.com
Registrar: Example Registrar, Inc.
Data Source: rdap
Registration Date: 2019-03-02
Expiration Date: 2027-03-02
Nameservers: ns1.example-dns.net, ns2.example-dns.net
Registrant: (redacted under the GDPR)
Part 7
Sections 12 to 15 and the footer
The document ends with the optional content checks and the formal sections.
- 112. AI Content Detection and 13. Image Provenance. Filled in when these checks ran: signals of AI generation in the page's images, and per-image server dates. Otherwise the headings stay with a note that no data was available.
- 214. Data Collection Methodology. Starts on a new page: the target URL, collection time, environment and the pseudonymous user who made the capture.
- 315. Legal Notice. What the document is and what it may be used for.
- 4Standards & Compliance. Alignment with the ISO/IEC 27037:2012 guidelines for handling digital evidence (a guidance standard, not a certification), the self-authentication line only in English documents, and the eIDAS line only when eIDAS was requested. Then come the verification links.
- 5Footer. The same on every page, including the last.
12. AI Content Detection Signals1
No data of this kind was available for this capture, so this section is empty. The section number is kept so that references from elsewhere in this document remain valid.
13. IMAGE PROVENANCE (PHOTO AGE)
No data of this kind was available for this capture, so this section is empty. The section number is kept so that references from elsewhere in this document remain valid.
14. Data Collection Methodology Specification2
The data collection methodology is fully described in the attached technical metadata and manifest, which are an integral part of the evidence package. Key collection parameters are as follows:
Target Source (URL): https://example-shop.com/listing/4821
Collection Date and Time (UTC): 2026-10-14T15:30:12Z (UTC)
Collection Environment (User Agent): Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36
User Identification: Collection was performed by the user with pseudonymous identifier Xq7LmR2vTn9KpB4sWc1YhZ8dFa63 from IP address 203.0.113.42.
15. Legal Notice:3
This document is generated by ProofSnap to provide a verifiable snapshot of a web page at a specific point in time. The included digital signatures and timestamps ensure the integrity and authenticity of the captured data. ...
Standards & Compliance4
Aligns with ISO/IEC 27037:2012 guidelines for identification, collection, acquisition and preservation of digital evidence.
Supports self-authentication of electronic records through a SHA-256 hash and a signed manifest; admissibility is determined by the competent court under the applicable rules of evidence.
EU eIDAS 910/2014 qualified electronic timestamp by a QTSP, when this package contains manifest.json.tsr.
Independent verification, no ProofSnap account or service required:
Verify online: getproofsnap.com/verify/index.html
Verify source code (MIT): github.com/proofsnap/proofsnap-verify
Part 8
provenance_certificate.pdf: one page, six checks
The provenance certificate condenses the capture into a single page in the same evidence language. Hand it to someone who needs the result at a glance.
- 1Capture details. Evidence ID, page title, URL, time, the SHA-256 of the screenshot, browser, extension version and the custodian ID.
- 2Package integrity. A reminder that all hashes are in the signed manifest, and that this was a live browser capture, not an uploaded file.
- 3Integrity checks. Automation detection, NTP time cross-checked against up to three sources, DNS from two resolvers, and the device integrity score against its pass mark of 80. The status reflects the moment of capture; the PDF is not updated afterwards.
- 4Blockchain timestamp. SUBMITTED: the Bitcoin anchor is confirmed a few hours later, so check it then with the verifier. NOT INCLUDED on Essential unless an eIDAS or Video SnapPack credit paid for the capture.
- 5eIDAS qualified timestamp. REQUESTED or NOT INCLUDED. The stamp is applied after this PDF is written, so it is the presence of
manifest.json.tsrandeidas_validation.jsonin the package that confirms it.

PROVENANCE CERTIFICATE
Source Authenticity Declaration
2Package integrity: SHA-256 hashes of all files in manifest.json (signed RSA-4096)
Live browser capture (not file upload)
Status as at the time this record was generated; this document is not updated afterwards.
maximum spread between sources: 41 ms
integrity score 100/100 (pass threshold: 80)
Requested; applied if manifest.json.tsr and eidas_validation.json are present in this package
Verify online: getproofsnap.com/verify/index.html
Verify source code (MIT): github.com/proofsnap/proofsnap-verify
Part 9
metadata.json: the technical record
The JSON files stay in English whatever the evidence language, so tools and experts can read them. metadata.json holds everything the PDF summarizes, uncut. Open it in any text editor or browser.
- 1Page. URL, title, capture time, user agent, referrer and the page's meta tags.
- 2Browser state. The page's cookies, local storage and session storage as the page could read them, in full and not masked. Treat the package as confidential.
- 3Connection. TLS information as far as the browser exposes it.
- 4Lookups. Evidence ID, the DNS results, the HTTP response headers and WHOIS. Screenshot scope and the page dimensions live here too.
Part 10
chain_of_custody.json and forensic_log.json
These two files are the record of the capture itself. forensic_log_summary.txt shows the same log as plain text for readers without a JSON viewer.
- 1Evidence. Evidence ID, local and NTP-corrected capture time, source URL with its hash, and page title.
- 2Custodian. The custodian ID (user_uid) and the SHA-256 of the account's email address, so the person who made the capture can be identified on request without printing the address.
- 3Integrity. How the record is sealed (
sealed_in_manifest), the state of the timestamps when the package was built (ots_statusreads pending when a Bitcoin timestamp was obtained, because the anchor is confirmed hours later, and not_stamped otherwise;eidas_statusreads requested or not_requested) and the list of files. Alegal_contextblock appears only when at least one of its fields, such as a case reference, was filled in. - 4Link to the log. The hash of
forensic_log.jsonand the last hash of its chain. - 5Operations. Every step of the capture from
capture_initon, with times, durations and results. When a video was recorded, the video steps follow the generation of the evidence PDF. The verification files, the US court declaration template, the chain of custody, hashing, signing and zipping come after the log is closed and are covered by the manifest instead. - 6Hash chain. Each step carries the hash of the one before, so removing or editing a step breaks the chain.
Part 11
manifest.json, the signature and the timestamps
The seal of the package. Everything else is checked against manifest.json, and the manifest is checked against its signature and timestamps.
- 1Header. Manifest version, the evidence ID as
capture_id, source URL and capture time. - 2Files. The capture files with their SHA-256, SHA-512 and size. If one byte of a listed file changes, its hash no longer matches.
publickey.pemandmanifest.sigare listed by name only, and the timestamp files, made after the manifest, are not listed. - 3Signature and key.
manifest.sigis an RSA-4096 signature over the manifest andpublickey.pemthe key to check it. The signature binds the listed file hashes together; the key is generated for each capture and travels in the ZIP, so the timestamps are what fix the manifest in time.manifest.json.otsanchors the manifest hash in Bitcoin and shows it existed no later than the anchored block;manifest.json.tsr, when present, is the qualified timestamp.
"A time-stamping service supports assertions of proof that a datum existed before a particular time."
IETF RFC 3161 (2001), section 1, the standard behind the qualified timestamp in manifest.json.tsr
Both timestamps cover the hash of manifest.json, not the page itself, which is why every other file is checked through the manifest. To check the Bitcoin anchor by hand, see how to verify an OpenTimestamps .ots file.
Part 12
Check the package
Two ways. The scripts run on the reader's own computer and need nothing from ProofSnap. The Trust Verifier runs in the side panel or, with no account, on the ProofSnap website. Every step, with the full output explained, is in the guide on how to verify an evidence package.
- 1File integrity. Unzip the package and run
bash verification/verify.sh(macOS, Linux) orverify.ps1in PowerShell (Windows). It recomputes the hash of every listed file and compares it with the manifest. - 2Signature. Checks
manifest.sigwithpublickey.pem. This step needs OpenSSL. - 3Timestamps. Reads the eIDAS token when present and prints the command for a deep check of the Bitcoin anchor.
- 4Verdict. PASS, FAIL when a check ran and disagreed, or INCOMPLETE when a tool was missing, which does not indicate a problem with the package.
- 5Trust Verifier. Drop the ZIP and click Verify zip file.
- 6Result. Integrity: match means the files match the manifest and the manifest matches its signature. Show technical verification lists every check.
verify.sh in the macOS Terminal, simplified and shortened. The file count is an example.
ProofSnap Trust VerifierClick to upload or drag and drop
Zip file
proofsnap_20261014_153012.zip
The Trust Verifier in the side panel.
Part 13
What to hand to a lawyer or a court
Hand over the ZIP exactly as it was downloaded. Copy files out of it to read them, but do not edit, re-save or re-zip the originals. For reading and printing, evidence.pdf is the document; the ZIP is what makes it checkable. The package supplies the integrity and time records the court can check.
- 1US court declaration template. When the person making the capture switched on Court filing forms, the package has a declaration template for self-authentication under FRE 902(13). A qualified person completes and signs a copy, and the rule also requires reasonable written notice to the other side before the trial or hearing. Leave the template in the package untouched: changing it would break its hash. See how to complete the US court declaration.
- 2Download right away. ProofSnap does not keep a copy, so the downloaded ZIP is the original.
- 3One ZIP per capture. Keep it with your case file and give the other side and the court the same ZIP, so everyone can run the same checks.

Common questions
Make evidence a court can check
Install ProofSnap and capture your first page.
Install ProofSnap, 7 days freeAlso available for Microsoft Edge
More guides: How to capture a web page · How to verify an evidence package · How to record video evidence · How to certify a file
