Mileage & Tax Log: Deduction — Privacy Policy

Last updated: 29 October 2026 · Package: com.ibrahimtxy.kmvergi · Developer: bulbildir

In short: the developer collects no personal data, the app does not ask you to create an account and sends nothing to any server of ours — we do not operate one. Everything you enter stays on your phone. The free tier shows Google AdMob ads (every format is listed in §5); the Google Mobile Ads SDK that serves them collects and shares with Google the IP address, app interactions, diagnostic information and device identifiers, including the advertising ID (§5). Paid members see no ads and no ad request is made at all. The developer uses no analytics and no crash reporting.
Important: This app is a RECORD, not tax advice. Mileage rates, brackets and the start of a tax year are set by your tax authority and change; no rate is used until you save it. Check the current rate with your tax authority or your accountant before you file.

1. What the app does

Mileage & Tax Log: Deduction keeps the records you enter and works them out for you. An example entry: Client visit · 42.6 mi · 14 March.

The app reads nothing from the internet: it contacts no source, looks nothing up and has no account to sign in to. Every figure it shows is computed on this phone from what you typed.

2. Data we collect

The developer collects none. We run no server and receive nothing from your device — not your records, not your device identifier, not your usage, not crash reports.

The one exception is advertising, and the developer does not process that either: in the free tier Google serves the ads and may use your device's advertising ID (AAID) and IP address. See §5.

3. What is stored on your device

The records you enter, the settings you choose and the reminders you set, with the time each reminder last went off so that it is not sent twice. All of it lives in the app's private storage and is deleted when you uninstall the app.

4. Servers the app talks to

For its own work, none. The app contacts no source server: there is nothing to fetch. The only network traffic it makes is the advertising and purchase traffic described in §5 and §6, and the free tier is the only tier that makes the first of those.

5. Advertising

This section applies to version 0.1.0 and later. Earlier versions show no ads, contain no advertising library and read no advertising ID.

The free tier shows ads. They are served by Google AdMob; the developer does not choose what is shown and has no direct relationship with advertisers. The formats used are:

Interstitial, rewarded interstitial and app open ads are no longer used; versions of the app released before 28 October 2026 also showed these formats.

There is no analytics (Firebase Analytics and the like), no crash reporting (Crashlytics and the like) and no marketing tracker. How you use the app is never reported to the developer.

6. Permissions

PermissionWhy
ACCESS_COARSE_LOCATIONOnly to stamp an approximate place on a record you create, and only while you are creating it. It is never read in the background and never sent anywhere.
ACCESS_FINE_LOCATIONTo record where an entry was taken. Location is read ONLY while you are recording, stays on the device and is never sent anywhere; if you decline, the app keeps working without location.
ACCESS_NETWORK_STATESo the ad library can see the connection state. Your entries do not use the network.
FOREGROUND_SERVICESo Android does not stop the work while a recording is running. The service is VISIBLE in the notification shade; it never runs hidden.
FOREGROUND_SERVICE_LOCATIONThe service type required to read location while a recording runs. It starts only when you start a recording and stops when you finish.
INTERNETFor ads ONLY. Your entries never leave the device and the app has no server of its own.
POST_NOTIFICATIONSTo remind you about the dates and reminders you set yourself.
READ_BASIC_PHONE_STATESo the ads library can tell Wi-Fi from mobile data. It grants no access to your phone number, IMEI or call log; the app does not declare it, the ads library adds it.
RECEIVE_BOOT_COMPLETEDSo your reminders keep working after the phone restarts.
VIBRATETo vibrate when a notification arrives.
WAKE_LOCKSo the phone does not fall asleep in the middle of a check. The app does not ask for this itself; the background work library (Android Jetpack WorkManager) adds it.
BILLINGSo you can buy a paid membership through Google Play. The app does not declare this permission itself; the Google Play Billing library adds it. Your payment details (card, address, invoice) never reach the app and are never seen or stored by it — Google Play takes the payment. All the app learns is whether your membership is active.
AD_IDAds in the free tier are served by Google AdMob, which may read the device advertising ID (AAID). The app does not declare this permission itself; the ads library adds it. Paid members make no ad request at all. You can reset or delete the ID in Settings › Google › Ads.

7. Payment and membership

If you buy a paid membership, the payment is handled by Google Play. Your card details are never entered into the app and are never seen by the developer.

Monthly and yearly memberships renew automatically; Google Play charges your account at the start of each period. The lifetime membership is a one-off purchase and does not renew. You can cancel a subscription at any time in Google Play Store › Menu › Subscriptions; cancelling takes effect at the end of the period you have already paid for. Refunds are also handled by Google Play — the developer has no access to the payment.

The app has no server of its own. Whether your membership is active is read again every time the app asks Google Play (when you open the app and when you view the membership screen). That is why a cancellation or refund closes the membership the next time you open the app. If you changed device, Restore purchases on the membership screen brings back a purchase made with the same Google account.

8. Children

The app is not directed to children. The developer collects no data from anyone; the advertising data described in §5 is processed by Google.

9. Keeping and deleting your data

Everything the app stores stays on your device; there is no account and no server copy. Clearing the app’s storage, or uninstalling the app, deletes everything it has ever kept — nothing survives elsewhere, so there is no separate deletion request to make. A paid membership is held by Google Play, not by the app: it survives reinstalling and can be brought back with Restore purchases.

10. Changes

If this policy changes, the date at the top changes with it.

11. Contact

bulbildir@mail.com

12. This app in detail

The sections above apply to every app by this developer. What follows is written for this app only and describes exactly what it records, what it never records and what it will not claim.

SUMMARY
The developer receives none of your personal data. Everything you enter or
that the app measures — the date, the start and end time and the LENGTH of each
journey, whether it was business, personal, medical, charity or moving, its
category, purpose, note, client or job and load, your vehicles and their
odometer readings, the frequent trips, categories, reminders and working-hours
rule you save, the mileage rates you set up and, if you use the tax set-aside
estimate, the set-aside rate and period earnings you type — is stored ONLY on
your device. There is no account and no sign-in, and no network connection is
made in order to record a journey, calculate a deduction or produce a report.

LOCATION: WHAT IS MEASURED AND WHAT IS NEVER STORED
To measure how far you drove, the app reads GPS while automatic detection is
switched on, or while you record a single trip with Record one trip. What is
written to storage is TWO TIMESTAMPS AND A LENGTH; if you later correct a
measured distance, the length that was measured is kept next to yours so the
report can show both. NO COORDINATE IS EVER WRITTEN TO DISK: there is no route,
no start address, no destination and no map anywhere in this app, and a saved
frequent trip holds a name and a distance, never an address. The app holds at
most two readings in memory, only as long as it needs them to measure the
distance, and then forgets them. A backup file you write yourself contains the
same thing — times and lengths — and no coordinates.

IMPORTING FROM ANOTHER APP
You can bring trips over from another mileage app by picking ONE file through
Android's own file picker: a CSV export with a header row, or a GPX track. The
app gets access to that file only, reads it once and asks for no storage
permission. From a CSV it keeps the date, the start and end time, the distance,
the type, the purpose, the note, the client or job and the vehicle name; address
and location columns are NOT read. From a GPX track it keeps only the start and
end time and the length: the track's points are used in memory to measure the
length and are then forgotten, and its name is not kept either. NO COORDINATE IS
WRITTEN TO DISK. Before anything is saved you see what will be imported, and a
row that overlaps a trip you already have is skipped.

DETECTION ONLY RUNS WHEN YOU SWITCH IT ON
Automatic detection, and a single trip you record with Record one trip, run as
a foreground service. While it is running, a permanent notice stays in your
status bar, so measurement can never happen without you seeing it. It stops the
moment you switch detection off or tap Stop, and it NEVER restarts by itself —
not after a reboot, and not when you next open the app. A single trip does not
end by itself either: it ends when you tap Stop, and a trip in which no distance
was measured is not saved.

BACKGROUND LOCATION PERMISSION IS NOT REQUESTED
android.permission.ACCESS_BACKGROUND_LOCATION is not in this package. That
separate permission would let an app read your location even when you have not
switched anything on; this app does not ask for it and does not want it.
android.permission.ACTIVITY_RECOGNITION is not in this package either — movement
is measured from location itself, so there is no reason to ask the phone what
your body is doing. Location permission is requested only when you switch
automatic detection on or tap Record one trip, after the screen has explained
exactly what is measured — never at start-up.

NO CONTACTS, NO CALENDAR, NO CAMERA, NO MICROPHONE
The app requests NO contacts permission and NO calendar permission;
android.permission.CAMERA and android.permission.RECORD_AUDIO are not in this
package either. It does not need them: it measures distance and multiplies it by
a rate. Bank feeds, expense receipts and invoicing are deliberately out of scope.
The Help & support card opens your email app or your browser only when you tap
one of its buttons; nothing is sent by itself.

NOTHING LEAVES THIS PHONE UNLESS YOU SEND IT
A trip log says when you drove, how far and how often, week after week. It runs
entirely on this device and is never uploaded. Automatic cloud backup is switched
off (allowBackup=false); a backup is only written when you choose to write one,
to a file you select yourself. That backup contains your trips AND the rates you
entered, together with your vehicles, odometer readings, frequent trips,
categories, reminders and working-hours rule and the set-aside rate and
earnings you typed for the estimate, so a new phone can start where the old one
stopped.
Send PDF and Send CSV put the report in a private folder inside the app and hand
it, through Android's share sheet, only to the app you choose there (for example
your email app). This app itself uploads nothing, and each new send replaces the
previous file in that folder. What happens to the file after that is decided by
the app you chose. Send Excel does the same with the Excel (.xlsx) file.

INTERNET AND PERMISSIONS
The internet permissions (android.permission.INTERNET,
android.permission.ACCESS_NETWORK_STATE) are used for advertising only.
ACCESS_FINE_LOCATION and ACCESS_COARSE_LOCATION measure journey distance;
FOREGROUND_SERVICE and FOREGROUND_SERVICE_LOCATION let that measurement keep
running with the permanent notice described above. POST_NOTIFICATIONS shows
that notice and the reminders you switch on — unmarked trips, your report and
logging a day's trips; VIBRATE and RECEIVE_BOOT_COMPLETED are used for the
reminders, and WAKE_LOCK is added by the background work library while a
scheduled check runs. The reminders are worked out on this phone from your own
records and never arrive between 22:00 and 08:00. Notification permission is
requested only when you switch a reminder or location measurement on
(measurement only runs together with its notice) — never at start-up. The
advertising library adds
com.google.android.gms.permission.AD_ID and
android.permission.READ_BASIC_PHONE_STATE to the package. Purchases use
com.android.vending.BILLING.

ADVERTISING (Google AdMob)
The free version shows Google AdMob advertising. Three ad formats
are used: a bottom banner, a native ad inside the app's own content,
and a rewarded video you start yourself. There are no full-screen
ads between screens or when the app opens. AdMob may process
identifiers such as the advertising ID in order to serve ads. NO LOCATION DATA IS
SHARED WITH THE ADVERTISING LIBRARY OR WITH ANYONE ELSE — the ad SDK never
receives your journeys, and the app holds no location permission on its behalf.
Users in the European Economic Area, the United Kingdom and Switzerland are shown
a consent screen through Google's User Messaging Platform (UMP), and you can
change your choice later under Settings > Privacy. Google's privacy policy
applies to AdMob's own processing: https://policies.google.com/privacy

PAID MEMBERSHIP
You can buy an ad-free membership through Google Play Billing. A paying member
sees no advertising at all: no ad is displayed and no ad request is even sent.
The paid plan also unlocks the PDF, CSV and Excel deduction report (export and
send) and a wider history window. Alternatively, watching a rewarded ad unlocks
both for 24 hours.
Purchases are handled by Google Play; the app never sees or stores your payment
details, and you can restore an existing purchase from the membership section.

RECORDING AND MARKING TRIPS IS NEVER BEHIND THE PAYWALL
Recording journeys — automatically, with Record one trip or by hand — marking
them business or personal, editing and splitting them, and seeing this period's
distance and deduction are unlimited on every plan, including the free one. The
calculation happens on your phone and costs
nothing to run, and this is a figure about your own tax deduction — putting it
behind an ad would be using the product against the person who needs it. What
money buys is how many past trips the history list shows and whether you can
export or send the PDF, CSV and Excel report. THE LIMIT NEVER DELETES
ANYTHING: trips outside the window stay on the device and a backup always
contains every one of them.
Unmarked trips are shown on every plan no matter how old they are, because a trip
you cannot mark is a deduction you cannot claim.

NO MILEAGE RATE IS USED UNTIL YOU SAVE IT
Rates are set by tax authorities and they change, sometimes in the middle of a
year; they also differ in shape, because some countries pay one flat rate and
others pay a higher rate up to a yearly distance and a lower rate above it. The
tax year itself starts on a different date in different countries. A number the
app applied by itself would keep producing a confident, wrong figure long after
the rules had moved, and nothing would look broken. So the deduction is only
ever calculated with a rate you saved, and you record where you read it; that
source is printed in the header of every report the app produces, so anyone
checking your return can check the rate too.
Medical, charity and moving trips are priced only with a rate you saved for
that type of trip; the business rate is never applied to them, and their
amounts are shown separately and are never added to the business deduction.
For the United States the app carries one table: the IRS standard mileage rates
for business use for 2022 to 2026, as irs.gov listed them on 30 September 2026,
including the changes of 1 July 2022 and 1 July 2026. When your profile's
country is the United States or is left empty, the rate form offers to fill in
that table's rate for you to compare with the IRS page; nothing is counted until
you save it, a year that is not in the table is never filled in and the nearest
year is never used instead. For every other country the app contains NO mileage
rates, NO band limits and NO tax-period dates. Source of the US table:
https://www.irs.gov/tax-professionals/standard-mileage-rates

UNMARKED TRIPS ARE NEVER COUNTED AS BUSINESS
A journey that you have not marked is left out of the deduction. The app will not
guess: guessing "business" would put a claim in your return that you never made,
and guessing "personal" would quietly cost you money. The report lists unmarked
distance on its own line and says it is not included. A working-hours rule is
not a guess, because you write it yourself, and it is off until you switch it
on: it marks a trip as business only when the whole trip falls inside your
working hours on one of your working days, and as personal only if you chose
that for trips entirely outside them. A trip that is only partly inside stays
unmarked, every trip the rule marked carries a "by rule" note on screen and in
the report, and the rule never changes a trip you marked yourself. An imported
trip whose type the app does not recognise is imported unmarked too, with the
original wording kept in its note.

NOT TAX OR ACCOUNTING ADVICE
THIS APP IS FOR INFORMATION ONLY AND IS NOT TAX, ACCOUNTING, LEGAL OR FINANCIAL
ADVICE. It is not connected to any tax authority, bank or accounting provider,
it does not file anything on your behalf and it does not verify anything for you.
The figure it produces is an estimate based on the journeys recorded on this
phone and the rate you entered yourself. The optional tax set-aside estimate
only takes the period's mileage deduction off the earnings you type and
multiplies the rest by the rate you type; it does not know your tax bracket or
what you actually owe. Whether a journey is deductible, which
rate applies and what records you must keep are decided by your tax authority,
not by this app. Check your own authority's current guidance or ask a qualified
accountant before you file.

MEASUREMENT
The app keeps five counters on this device — trips recorded, trips marked,
mileage rates saved, reports exported and unmarked-trip reminders delivered. They
are shown to you under Settings > Usage and are never sent anywhere (a report
you send counts as an export). There is no analytics SDK in this package.

CHILDREN
The app is not directed at children.

CHANGES
This policy may be updated; the current version is published at:
https://bulbildir.it.name.tr/gizlilik/kmvergi.html

Questions: bulbildir@mail.com