Privacy Policy
Last updated October 2026
This policy explains what per.hr collects, why, who helps us run the Service, and the choices you have. It also covers clients who receive invoices or estimates sent through per.hr.
1. What We Collect
- Account details: your name, email address and photo, including from Google or GitHub if you sign in with them.
- Business details: what you add for your invoices, such as your business name, address, phone, logo and payment instructions.
- Your work: clients, projects, time entries, notes, photos, estimates and invoices.
- Your clients' details: the names, emails and addresses you enter so you can bill them.
- Billing: your plan and payment history. Card and bank details are handled by Stripe or PayPal; per.hr never sees or stores full card numbers.
- Usage and devices: which features are used inside the app, basic device and browser information, and push notification tokens if you turn notifications on.
- Public profile, if you turn one on: your headline, LinkedIn profile, types of work, rates, terms and availability.
- Identity check, if you choose to verify: your verified name and the date. Stripe takes and keeps the photos of your ID and your selfie; per.hr never receives them.
- Messages: what you send us through the contact form or by email.
2. How We Use It
- To run per.hr: tracking, invoicing, payments, teams and reports
- To send the invoices, estimates and reminders you ask us to send, and to notify you when they're viewed or paid
- To bill your subscription and keep your account secure, including spotting fraud and misuse
- To answer your questions and improve the product
We don't sell personal information, and we don't show ads.
3. If You Receive an Invoice
When a per.hr user bills you, they decide what information about you to enter, and we process it on their behalf to deliver and collect the invoice. We email you only after you confirm your address, and every email has a link to report a sender you don't recognize. If you pay by card or PayPal, that payment is handled by Stripe or PayPal and goes to the sender's own account.
4. Public Profiles, Identity Checks and the Browser Extension
A public profile is off until you turn it on. It shows your name, photo, headline and types of work to anyone, plus whichever of these you choose to show: your rate range and availability to anyone, and the rate for each type of work and your terms to signed-in per.hr Pro and Team members only. Public profiles are kept out of search engines.
If you verify your identity, Stripe checks your ID and compares it with a selfie, with your consent. We keep only your verified name and the date, and show an “ID verified” badge on your profile. If you validate LinkedIn by signing in with it, LinkedIn gives us your name and account ID. We check that the name matches your ID, show a “LinkedIn validated” badge, and keep the name and a one-way hash of the account ID so one LinkedIn account validates one profile. We don't ask LinkedIn for your email, and we don't post to or read anything else from LinkedIn. We never show whether a check failed, never share anything from the check with other users or companies, and never use it to decide whether anyone is hired, placed or offered work.
The per.hr browser extension runs on LinkedIn profile pages. It contacts per.hr only when the page already links to a per.hr profile, and then only to look up that profile's public details. It doesn't record which pages you visit.
5. Who Helps Us Run per.hr
We share information with these providers only as needed to run the Service, under agreements that protect it:
- Clerk: Sign-in, including Google and GitHub sign-in
- LinkedIn: Sign In with LinkedIn, when you validate a public profile: your name and LinkedIn account ID only
- Stripe: per.hr subscriptions, card and bank payments to you through your own connected account, and identity checks for public profiles
- PayPal: PayPal payments to your own PayPal account, if you connect one
- Resend: Sending invoices, estimates, reminders and account email
- Railway: Hosting the app and its database
- Cloudflare R2: Storing photos, logos and files you upload
- Google Firebase: Push notifications, and usage analytics inside the signed-in app
- Google Analytics: Counting visits to per.hr's public pages (never the app, or invoice and estimate links)
Inside a team, people see what their role allows: owners and admins see everything, members see only their own clients, projects, time and pay statement, and viewers can read clients, invoices and amounts without changing them; what people are paid stays with owners and admins. We also share information when the law requires it.
6. Cookies
We use the cookies needed to keep you signed in and remember your settings. Inside the signed-in app, Google Firebase Analytics measures which features are used so we can improve them. On our public pages, Google Analytics counts visits and how people find us; visitors in the European Economic Area, the UK and Switzerland are counted without analytics cookies. We don't use advertising cookies, and Google Analytics never runs on invoice, estimate or client portal links.
7. How Long We Keep It
We keep your information while your account is open. When you delete your account, your personal data is removed as described in our Terms of Service; invoices and estimates are kept as financial records, and time you logged for a team stays with that team. Deleted data may remain in backups for a limited time.
8. Security
Every connection to per.hr is encrypted, access to data is limited to what's needed to run the Service, and sign-in is handled by Clerk. No system is perfectly secure, so tell us right away at support@per.hr if you notice anything wrong.
9. Your Choices and Rights
- Update your details anytime in Settings.
- Export your data to CSV anytime from Configure → Data.
- Delete your account from Settings → Security.
- Turn email and push notifications on or off in Settings → Notifications.
Depending on where you live, you may have more rights, such as to access or correct your information. Email us and we'll help.
10. Children
per.hr is for people 18 and older, and we don't knowingly collect information from children.
11. Changes to This Policy
When we make meaningful changes, we'll update the date above and tell you by email or in the app.
12. Contact
Questions about privacy? Email support@per.hr.