Row Counter

Privacy policy

Last updated:

This policy explains what the Row Counter app and this website do with your data. The short version: there's no account, your projects and patterns stay on your phone, and the app sends Google only what it needs for usage statistics, crash reports, ads you choose to watch and purchases.

At a glance

No account

You never sign up. We don't ask for your name, email address or phone number.

Your work stays on your phone

Projects, counts, notes, photos and patterns are stored on your device, and in your own Android backup if it's on. We never receive them. Your phone schedules reminders itself.

Usage and crash data, through Google

Firebase tells us how the app is used and when it crashes. In Europe, analytics waits for your answer.

Ads only when you choose

A video ad plays only if you choose to watch one to use one Pro tool for 5 minutes. Never while you count.

1Who we are

Row Counter (Android package io.testiq.rowcounter) is made by TESTIQ LLC, 1500 N Grant St Ste N, Denver, CO 80203, United States. We decide how the data described here is used, which makes us its controller under the EU and UK General Data Protection Regulation (GDPR). You can reach us at [email protected].

This policy covers the app and this website, rowcounter.testiq.io.

2What stays on your device

Everything you create in the app is stored in the app's private storage on your phone or tablet:

  • projects, parts, counters and counts, row reminders and timers, and the days you crafted, for the app's weekly summary;
  • notes, photos and tutorial links you add;
  • patterns you import (PDF files, photos and saved web addresses), the reading line's place on each page, and what you write on patterns;
  • your yarn and tools, your settings and the keys you assign for counting.

We have no server of our own and never receive a copy. The only copies are your own Android backup and the files you export or move to a new phone (see section 3). You pick patterns and photos with Android's own file and photo pickers, so the app sees only the files you choose and doesn't ask for access to your storage.

3Backup and moving to a new phone

  • Android backup. If backup is on for your phone, Android saves the app's data and settings (your projects, counts, notes and stash) to your own Google account, as it does for other apps. Your patterns and photos aren't included. Google keeps this backup under its own privacy policy, and we can't see it. You can turn it off in your phone's settings.
  • Moving to a new phone. When you copy your old phone to a new one with Android's transfer, the app's data, your patterns and your photos go along, directly between the two phones.
  • Export everything. In Settings → Backup & restore you can export everything, patterns and photos included, to one file and restore it on another phone. The file goes wherever you save it with Android's file picker; we never see it.

4What the app sends, and why

The app uses services from Google. This is what each of them receives.

Google's consent form (User Messaging Platform)

Each time the app starts, before you've chosen anything, it asks Google's consent service whether a choice is needed where you are. This sends Google your IP address and basic information about your device and the app. Where a choice is needed, it shows Google's form. Your answer is stored on your phone, where the app and Google's ads library read it.

Google Analytics for Firebase: how the app is used

Events such as the screens you open, finishing a step of the welcome screens, creating, duplicating, finishing or deleting a project, importing a pattern (its type, never its content), a counting session (how many counts, and for how long), linking chart mode, adding or using the widget, tapping a locked Pro tool, an ad offer or unlock, seeing or buying Pro, restoring a purchase, opening a tool, a free pattern or the introduction to the widget or to backup, trying a reading tool on the demo project, a first-time tip or a help page, turning reminders on or off (with your answer to Android's notification permission), tapping a reminder (its kind, never its text), tapping “Notify me” on the sync card and suggesting a better translation (the app's language and the screen you came from); and Firebase's own events, such as the first open, sessions and in-app purchases. Events never contain a project's name or anything you type. With them:

  • a random ID for this installation of the app;
  • your device model, Android version, app version and language;
  • your approximate location (country and region), worked out from your IP address, which Analytics doesn't store;
  • your phone's advertising ID, where Android and your choices allow it.

We use this to learn which features help and to improve the app. Each time the app starts, analytics stays off until Google's consent check has answered. If you're in the European Economic Area, the UK or Switzerland, it stays off until you answer the consent prompt. If you agree, the events above are sent with the identifiers listed. If you don't, analytics still sends Google cookieless pings: the same events without any identifier and without your advertising ID, and nothing is stored on your phone for them; Google uses them only to estimate overall usage (Google's “consent mode”).

Firebase Crashlytics: crash reports

When the app crashes or hits a serious error, it sends a report: the technical trace of what went wrong, which screen was open, your device model, Android version and app version, free memory and storage, and a random installation ID. Reports never contain your projects or patterns. They're sent whatever you answer in the consent prompt, because we need them to keep the app working (see section 5). We use them to fix bugs.

Firebase Remote Config and A/B Testing: settings and experiments

The app downloads a few settings from Firebase, such as how long an ad unlock lasts, so we can adjust them without an update. New users are also placed at random in one of two versions of the welcome screens, so we can learn which works better. For this, Firebase receives a random installation ID, your country, language and time zone, and your Android version.

Google AdMob: ads you choose to watch

The app shows only rewarded video ads, which you can choose to watch on a locked Pro tool, except the widget, to use that one tool for 5 minutes. There are no banners and no pop-up ads, and never an ad while you count. The app contacts AdMob only when you tap a locked Pro tool, so that a video is ready, and only if your consent allows ads. Google AdMob then receives:

  • your phone's advertising ID, its app set ID and your IP address;
  • information about your device and the app;
  • how you interact with the ad.

Google uses this to show and measure the ad, to prevent fraud and, if you allow it, to personalize ads. In the European Economic Area, the UK and Switzerland, Google's consent prompt asks for your choice the first time you open the app, and the app requests no ads until your choice allows them. If you decline, everything else still works and Pro stays available to buy. You can change your choice at any time in the app's Settings, under Privacy options. Learn how Google uses information from apps that use its services.

Google Play: buying Pro

Pro is a one-time purchase through Google Play. Google handles the payment; we never see your card or account details. The app asks Google Play on your device whether you own Pro, so it can unlock it after a reinstall or on a new phone. Google shares order details with us, such as the order number, date, country and price, which we need for accounting and refunds.

Reminders and notifications: nothing leaves your phone

Reminders to pick up your project are off until you turn them on, after your first project or in Settings → Reminders. On Android 13 and newer, Android then asks whether the app may send you notifications; the app never asks when it starts, and you can change your answer in Android's settings at any time. Your phone schedules and shows every reminder itself: there's no server and no push service, and your reminder settings, the days you crafted and the reminders' text never leave your phone. Row alerts, like “decrease every 6 rows”, are shown the same way. Analytics only learns that reminders were turned on or off, your answer to Android and that a reminder was tapped, as listed above.

Email you send us

If you write to us, or choose “Contact support” or “Suggest a better translation” in the app's Settings, your own email app opens with our address. The app adds a few lines under your message, which you can read and change before you send it: the app's language, your phone's language, the app version and the Android version, and for a translation suggestion, the screen you came from. Nothing is sent unless you send it. We receive your email address, your message and those lines, and use them only to answer you and improve the app.

Web pages you open

When you open a saved web pattern, the app loads the page straight from its website, as a browser would. That site receives your IP address and may use cookies under its own privacy policy. Its cookies and stored data stay on your phone, as a browser keeps them: they're left out of backups and go when you uninstall the app. Links you tap on the page open in your browser, and tutorial video links open on the site that hosts them. We don't see what you read.

6Who receives data

Data goes only to these recipients:

  • Google, for the app's services above. For Firebase, Google processes data on our behalf under the Firebase data processing terms. For AdMob and Google Play, Google is also responsible for data under Google's own privacy policy.
  • Namecheap, which hosts this website (see section 11).
  • Our email providers, which forward and store the mail you send us.

Google and Namecheap may process data outside your country, including in the United States, protected by the European Commission's standard contractual clauses; Google is also certified under the EU–US Data Privacy Framework.

We don't give data to anyone else.

7How long data is kept

  • On your device: until you delete it in the app or uninstall the app.
  • Analytics: at most 14 months, then deleted automatically.
  • Crash reports: 90 days.
  • Ads: as described in Google's privacy policy.
  • Purchase records: as long as tax and accounting law requires.
  • Emails: until your request is settled, and at most two years after our last exchange.

8Your choices and rights

  • Privacy choices. In the European Economic Area, the UK and Switzerland you can reopen the consent prompt in the app's Settings, under Privacy options, and change your choice at any time. Withdrawing consent doesn't affect what happened before.
  • Advertising ID. You can reset or delete it in your phone's settings, under Privacy → Ads or Google → Ads, depending on your phone.
  • Notifications. Turn reminders off in the app's Settings → Reminders, or the app's notifications in your phone's settings.
  • Deleting what's on your phone. Delete projects in the app, or uninstall it: uninstalling removes everything the app stored, and its random IDs. To remove the Android backup, delete it in Google Drive under Backups.
  • Data Google keeps for us. Analytics and crash data are linked to random IDs, not to your name or email address, so we can't look them up by who you are. They're deleted automatically after the times above. If you'd like them deleted sooner, email us and we'll tell you what we need to find them.
  • See your data. Under the GDPR and similar laws you can ask what we hold about you and get a copy: write to [email protected].
  • Correct or delete it. Ask us to fix data about you or to delete it.
  • Limit or object. Ask us to stop using your data, or to use it only for some purposes.
  • Complain. You can complain to your data protection authority.

9Children

Row Counter is meant for people aged 13 and over and isn't directed at children. We don't knowingly collect data from children under 13. If you believe a child has used the app and data was collected, write to us and we'll help delete it.

10Security

Everything the app sends to Google is encrypted in transit (HTTPS). Your projects live in the app's private storage, which other apps can't read.

11This website

rowcounter.testiq.io uses no cookies, no analytics and no trackers, and loads nothing from other sites: its fonts and images come from here. Our host, Namecheap, processes your IP address and the pages you request to deliver the site and protect it from abuse, and keeps these logs only briefly.

12Changes to this policy

We update this page whenever the app or the services it uses change, and change the date at the top.

13Contact

TESTIQ LLC, 1500 N Grant St Ste N, Denver, CO 80203, United States
[email protected]