TextHandwriting.app is a small suite of free browser-based tools for converting typed text into realistic handwritten output and back. It started as a single tool for students who needed to submit handwritten assignments but found their handwriting slow or painful, and it grew from there.
There is no company behind it in the traditional sense. The tools are built to be useful and to stay free. The site covers its costs through the domain registration and nothing else currently.
Every conversion happens inside your own browser using the HTML Canvas API and JavaScript. When you type text and see handwriting appear, that rendering is done by your device, not a server. Nothing you type is transmitted anywhere. There are no backend API calls for the conversion itself.
The handwriting appearance comes from a combination of real handwriting-style web fonts (served by Google Fonts, which is a separate request to Google's servers) and randomised micro-variation in character position, rotation, and opacity applied per character on the canvas. This variation is what makes it look less mechanical than plain font rendering.
The OCR tool (Handwriting to Text) uses Tesseract.js, which loads the OCR model into your browser memory and processes images locally. Again, the image does not leave your device.
Built by a developer who got tired of seeing students stress about handwritten submission requirements. The tools are intentionally simple, with no accounts required to use them.
Last updated: June 2026
If you create an account, we store your name, email address, and a hashed version of your password in our database. We do not store the actual password. We record the date your account was created and the last time you logged in.
We do not collect, store, or transmit any text you type into the conversion tools. That processing happens in your browser.
We use Google Fonts to load handwriting typefaces. When the page loads, your browser makes a request to Google's servers to download the font files. Google's own privacy policy governs what they do with that request. We have no control over it.
Tesseract.js is loaded from unpkg CDN when you visit the OCR tool page. Your browser downloads the OCR model from their CDN. We do not pass any image data to unpkg.
jsPDF is loaded from cdnjs (Cloudflare) for PDF generation. No document content is transmitted to Cloudflare.
To delete your account and all associated data, email us from the address on your account. We will delete it within 48 hours and confirm when done.
The tools themselves have no age restriction. Account creation requires you to be 13 or older. We do not knowingly collect data from children under 13. If you believe a child under 13 has created an account, contact us and we will remove it.
If we change this policy in a meaningful way, we will update the date at the top of this page. We will not retroactively reduce your privacy rights without notice.
Questions about privacy can be sent to the contact address listed in the site footer. We try to respond within 3 working days.