Privacy Policy
Last updated: May 25, 2026
The short version
Your resume is processed in memory on our servers and never written to a database. The only things we keep (optionally, with your consent) are your email address and a temporary copy of your generated ZIP file so we can email it to you. We never sell your data.
What we collect and why
Resume content
When you upload a resume, we extract its text server-side to generate your portfolio. The raw file and extracted text exist only for the duration of that single request and are discarded immediately afterwards. We do not log, index, or store resume content.
Generated portfolio ZIP
After generation we upload your ZIP to Vercel Blob (a cloud storage service) so we can email you a persistent download link. The file is stored at a private, random URL. We do not automatically delete it on a schedule, but it contains only the data already in your resume and is not linked to any personal identifier other than the URL itself.
Email address
If you choose to enter your email in the post-generation prompt, we store it in Resend (our email service provider) and use it to send you the portfolio download link and a brief deploy guide. You can unsubscribe from any future emails at any time using the link in any email we send.
Analytics
We use Vercel Analytics to collect anonymous, aggregate pageview and Web Vitals data. No cookies are set. No personal information is collected. Data is used solely to understand which pages people visit and how the site performs.
AI processing — Anthropic Claude
Portly uses the Claude API, provided by Anthropic, PBC, to:
- Extract structured data (name, experience, skills, projects) from your resume text
- Optionally rewrite bullet points into a stronger format (only when you enable AI polish)
- Generate SEO metadata (page title, description, Open Graph tags) for your portfolio
Your resume text is transmitted to Anthropic's API for this processing. Anthropic's data handling practices are governed by their Privacy Policy. By using Portly, you agree to Anthropic's terms as they apply to API usage. Anthropic does not use API inputs to train their models by default.
Third-party services
Data retention
- Resume text: Not retained. Discarded after each request.
- Generated ZIP: Stored in Vercel Blob until manually deleted. No automatic expiry.
- Email addresses: Retained in Resend until you unsubscribe or request deletion.
- Analytics: Aggregate, anonymous. Retained by Vercel per their policy.
- Rate limit counters: Stored in Upstash Redis. Expire after 1 hour.
Your rights
You can request deletion of your email address or any stored portfolio ZIP at any time by emailing hello@useportly.dev. We will action requests within 30 days.
Changes to this policy
We may update this policy as the product evolves. Material changes will be noted at the top of this page with a revised date.
Contact
Questions? Email hello@useportly.dev.