Privacy Policy
Effective 9 September 2026. Version 2026-09-09.2.
1. Controller and contact details
Tekodot Ltd (we, us or our) operates OurStreets at ourstreets.app and is the controller of personal information processed for the purposes described in this policy.
We are registered in Northern Ireland under company number NI724147. Our registered office is Unit 1 Weavers Court, Linfield Road, Belfast, BT12 5GH, Northern Ireland. For privacy enquiries or to exercise your rights, contact [email protected] or write to us at that address.
This policy applies when you use the website, submit a report, subscribe to updates or contact us. You do not need an account to submit a report. Subscriptions are optional and are not a condition of reporting.
2. Information submitted in a report
When you submit a report, we receive:
- the coordinates of the pin you selected;
- the incident time derived from your selected time option;
- the incident category and context you selected;
- any optional written description submitted under “Something else”; and
- the version of the terms recorded with the submission.
Our server converts the submitted coordinates to the centre of a map grid cell and rounds the incident time down to the hour before saving the report. We do not retain the original coordinates or unrounded incident time as fields in the report record. The size of a grid cell varies by location. The cell identifies an area, rather than the exact pin you selected.
We also record when the report was submitted and information used to administer it, including whether it is published or held for review. The submission timestamp is distinct from the rounded incident time.
We do not request access to your device's location through its location permission. The pin is selected by moving the map. Information about network addresses and map requests is processed as explained below.
Written descriptions are not published through the public map or API. We use them to understand reports and assess whether additional reporting categories are needed. They may be accessed by people authorised to administer the Service or its supporting systems. Do not include names, contact details, exact residential addresses or other details that identify you or another person in a written description.
3. Public information and the limits of anonymity
The public map and API display report counts by grid cell. They also display the category, weekday and hour of recent reports within a cell. A cell may contain only one report. We generate public share images from report information.
The public map and API do not disclose written descriptions, the exact submitted pin, the unrounded incident time, submission timestamps, abuse-prevention identifiers or subscriber details.
We do not ask for your name or email address in the reporting form or attach reports to an account. However, this does not guarantee that a report cannot be associated with an individual. Someone familiar with an incident may recognise it from the area, time or circumstances. Technical records and timing information may also permit connections between otherwise separate records.
Information published on the Service can be viewed or copied by others. Removing information from our systems does not necessarily remove copies held by third parties.
4. Technical information and abuse prevention
When you use the Service, we and our infrastructure providers process information necessary to deliver and secure it, including your IP address, browser information, requested pages or resources, request times and error information. A requested address may contain the map location you are viewing. This information is used to operate the website, diagnose faults and prevent misuse.
For submission limits and abuse detection, the website stores a random identifier in your browser. It replaces the identifier when it is next used after 30 days. We derive keyed hashes from that identifier and your network address and store the hashes in a separate abuse-prevention table. They are not stored as fields in new report records. Separate storage reduces direct association but does not eliminate the possibility of correlation through timing or other technical information.
Automated checks may cause reports to be held for review instead of being published immediately. These checks concern the integrity of submissions; they do not assess whether an incident occurred. You may contact us about a moderation decision. We do not use this process to make decisions producing legal or similarly significant effects about you.
5. Browser storage and analytics
Browser storage
The application uses local storage to remember the version of the terms you accepted and the time of acceptance, to hold the abuse-prevention identifier described above, and to remember your analytics preference. Clearing website data removes these records from your browser and may cause the terms and preference prompts to appear again. It does not itself delete information already received by us.
Analytics
We use PostHog's EU cloud service, hosted in Frankfurt, Germany, to measure how the website is used and whether visits from our advertising campaigns result in report submissions. In the United Kingdom, the European Economic Area and Switzerland this happens only with your consent. Elsewhere, including the United States, optional analytics run under this notice unless you turn them off. Refusing or turning off analytics does not prevent you from browsing, reporting or subscribing to updates.
We record selected website actions, such as opening the reporting form or completing a submission, the general page type, event times, a temporary visit identifier and the version and time of your analytics consent. Where present after you consent, we also record recognised advertising sources and media, city-based campaign codes and a short advert code. Together these identify the advert you arrived through; we do not add the city or location you view or report about.
We do not send report categories, incident times, contexts, written descriptions, coordinates, map-cell identifiers, subscriber names or email addresses to PostHog. We do not forward your IP address, browser user-agent header, page URL or referring URL to PostHog. Our hosting and network providers still process technical information needed to deliver the website, as described in section 4.
Analytics requests pass through our server, which permits only the selected events and fields. A random identifier held in page memory associates events during the visit. It is replaced on a full page reload, a new day or a change of consent. It is not stored in cookies or browser storage. We do not use person profiles, session recordings or automatic capture of form inputs. The identifier does not itself guarantee anonymity.
Where consent is required, you can accept or reject analytics when asked, and no optional analytics events are collected before you consent. Everywhere, you can change your choice at any time using Privacy settings on the website. Withdrawal or opting out stops further optional analytics collection and does not affect the lawfulness of processing before then. We also treat a Do Not Track or Global Privacy Control signal as a refusal of optional analytics. Our measurement concerns visits and submissions within the same visit; it does not follow you across other websites or subsequent days.
We use campaign results to assess our advertising. We do not send individual conversion events, audience lists or report information to advertising platforms or use them to retarget visitors.
6. Subscriptions and correspondence
If you subscribe to updates, we collect your first name, last name and email address, the city associated with the subscription where supplied, and records of the subscription request and confirmation. We send a confirmation email and activate the subscription after you complete the confirmation process.
We use subscription information to send updates about OurStreets and the relevant city. You may withdraw your subscription consent at any time by emailing [email protected]. Withdrawing consent does not affect the lawfulness of processing before withdrawal. Subscription records are stored separately from reports and do not contain a report identifier. This separation does not establish that correlation is impossible.
If you contact us, we process your contact details, the contents of your message and information needed to respond. Please provide only information necessary for your enquiry. We will ask for further information if required.
7. Purposes and legal bases
Where information is personal information, the following legal bases apply under the UK GDPR and, where applicable, the EU GDPR:
| Purpose | Legal basis |
|---|---|
| Receiving, administering and displaying reports; maintaining report statistics; reviewing report categories | Our legitimate interests in providing information about reported harassment and unsafe experiences and improving the Service, subject to the additional requirements below |
| Operating and securing the website, delivering map content, preventing abuse and investigating technical faults | Our legitimate interests in providing a reliable service and protecting users and our systems |
| Sending requested email updates | Your consent |
| Responding to ordinary enquiries and service complaints | Our legitimate interests in responding to users and administering the Service |
| Responding to data protection requests and complying with binding legal requirements | Compliance with the applicable legal obligation |
| Optional website analytics and advertising measurement | Your consent in the United Kingdom, the European Economic Area and Switzerland; elsewhere our legitimate interests in understanding use of the Service and our advertising, with an opt-out |
When relying on legitimate interests, we must consider the necessity of the processing and balance our interests against your interests, rights and freedoms. Acceptance of the Terms of Use does not replace a lawful basis for processing personal information.
The structured reporting form does not ask you to identify an alleged offender or provide medical details. An optional written description is available when you select “other”; it is stored privately and is not displayed on the public map. Do not include names or other identifying details in that description. If you believe a report contains identifying or other inappropriate information, contact us using the removal process below. We may restrict access to, redact or remove that information when reviewing the report.
Providing a report or subscribing is voluntary. We need the required reporting fields to process a submission and the required subscription fields to administer a subscription. Written descriptions and subscriptions are optional. You may browse without submitting either.
8. Recipients
We use the following providers to support the Service:
- Railway: hosting the application and its PostgreSQL database in Amsterdam, Netherlands;
- Cloudflare: delivery and security of website traffic and storage and delivery of public share images;
- PostHog: analytics, using its EU cloud service in Frankfurt, Germany;
- Resend: delivery of subscription confirmation emails and service updates; and
- CARTO: provision of the map background. Requests for map resources disclose network and browser information and the map area requested to the provider.
These providers receive information needed for their respective services. Their roles and responsibilities depend on the service and applicable contractual terms. Where a provider processes personal information on our behalf, data protection law requires an appropriate processing agreement. A provider may also process information for its own purposes, as described in its privacy notice.
Members of the public receive the report information described in section 3. We may also disclose information where required by law, including a binding court order, or where otherwise lawfully necessary to establish, exercise or defend legal rights. The Service does not routinely refer reports to the police, but this does not prevent a legally required disclosure.
We do not sell personal information or share it for cross-context behavioural advertising. Any future arrangement to provide information to councils, transport operators, venues or other organisations will require an assessment of the information shared, its purpose and its legal basis. We will update this policy before introducing materially different processing.
9. International transfers
Our application and primary database are hosted in the Netherlands. PostHog analytics is hosted in Germany. Other providers may process information through their international networks or permit access from other countries, including the United States. The location of a hosting region does not, by itself, determine every country in which information is processed.
Transfers from the UK to the European Economic Area benefit from UK adequacy arrangements. For processing elsewhere, our providers publish arrangements including standard contractual clauses and the UK International Data Transfer Addendum, or applicable adequacy frameworks. Their published terms describe when those arrangements apply: Railway, Cloudflare, PostHog, Resend and CARTO. Contact us for information about the safeguards applicable to your information or to request a copy of relevant contractual safeguards.
Before this revision, analytics used PostHog's US cloud service. Any records retained from that configuration remain subject to review and deletion; creating the EU project does not move or erase them. The consent controls described above apply to new collection and do not retrospectively authorise earlier collection.
10. Retention
We retain personal information for the purposes described in this policy for no longer than it is needed. Some records are removed automatically; others are reviewed and deleted manually. We have not set a fixed automatic deletion period for report records other than written descriptions, analytics events or correspondence. The criteria below guide those reviews; the absence of an automatic expiry does not authorise indefinite retention of unnecessary personal information.
| Information | Retention period or criteria |
|---|---|
| Report records, excluding written descriptions | Retained while needed to maintain the reporting map, examine historical patterns and changes over time, and administer reports or disputes. Reviews consider whether individual records are still needed or anonymous statistics can serve those purposes, and whether records are outdated, inaccurate or create a privacy risk. |
| Written descriptions | Scheduled for erasure after 90 days from submission. |
| Abuse-prevention hashes | Scheduled for deletion after 24 hours. |
| Unconfirmed subscriptions | Confirmation links expire after 24 hours; expired unconfirmed records are scheduled for deletion. |
| Confirmed subscription details | Retained to provide requested updates until you unsubscribe or request deletion, subject to any limited information needed to honour an opt-out or address a dispute. |
| Analytics events and consent evidence attached to events | Reviewed for continued need to evaluate website use, campaign performance and the consent underlying collection. Individual events are deleted when those purposes no longer require them; anonymous totals may be retained for historical comparisons. Withdrawing consent stops new collection but does not automatically erase previously collected events. |
| Technical logs | Kept as needed to operate and secure the service, diagnose faults and investigate incidents, subject to the relevant provider's retention settings. Relevant records may be preserved for an active investigation. |
| Enquiries, complaints and privacy requests | Kept while handling the matter and afterwards only as needed to document the response, address a related dispute or meet a legal obligation. |
| Browser record of terms acceptance | Until cleared or replaced by acceptance of a later version. |
| Browser abuse-prevention identifier | Replaced on its next use after 30 days, or removed when website data is cleared. It may remain in an unused browser until then. |
| Browser analytics preference | Accepted or rejected choices are valid for 180 days. An expired choice no longer enables analytics. The stored record may remain in an unused browser until the next choice or website data is cleared. |
Written descriptions, abuse-prevention hashes and expired unconfirmed subscriptions are removed by a job scheduled every five minutes. Deletion may occur at a later run if that job is temporarily unavailable. Manual deletion of other records is separate from that schedule. Clearing a browser identifier or preference does not itself delete records already held on our servers or by a provider.
We may retain historical statistics without a fixed end date where they have been anonymised so that individuals are no longer identifiable. Merely removing a name or replacing it with an identifier does not establish that information is anonymous.
Where specific information is needed for an active security investigation, a legal obligation or legal claims, we may retain that information for the duration of that need. Deletion from active systems may precede removal of residual copies retained by a provider under its recovery or security arrangements. Contact us to discuss a particular record or deletion request.
11. Your rights
Depending on the law that applies and the basis on which we process your information, you may have the right to request access to it, correction, erasure or restriction of processing. You may also have a right to receive information you provided in a portable format where the applicable legal conditions are met, and to withdraw consent where processing is based on consent.
You have the right to object to processing based on legitimate interests on grounds relating to your particular situation. You may object to direct marketing at any time. Contact [email protected] to exercise these rights.
You may also request the removal or restriction of a report that raises a privacy or safety concern by emailing the same address, whether or not you submitted it. Include the page link or map area and, if known, its displayed category and time, and explain your concern. Our review process is described in section 5 of the Terms of Use. You do not need to identify a particular legal right to raise a concern.
We may need proportionate information to verify a request and locate the relevant records. Because reports do not contain a reporter's name or account, we may be unable to establish which report relates to you. Providing the map area, approximate incident time and category may help us investigate, but does not necessarily establish ownership of a report. We will not disclose another person's information merely because it matches those details. Do not send identity documents unless we request them and explain why they are necessary.
We normally respond without undue delay and within one calendar month of receiving a request. Where applicable law permits an extension or adjustment to that period, we will explain the reason and the expected response time. Requests are normally free of charge.
You may complain to the UK Information Commissioner's Office at ico.org.uk/make-a-complaint, by telephone on 0303 123 1113, or at Wycliffe House, Water Lane, Wilmslow, Cheshire, SK9 5AF. Where applicable, you may also complain to the supervisory authority in the country where you live or work, or where you believe an infringement occurred. You do not have to contact us before exercising that right.
If a US state privacy law applies to our processing of your information, additional rights may be available, including rights to know, access, correct, delete or obtain a copy of information, and to appeal certain decisions. Contact us using the details above. We will not discriminate against you for exercising applicable privacy rights.
12. Children
The Service is intended for people aged 18 and over. We ask reporters to confirm that they meet this requirement; we do not routinely collect identity documents to verify age. If you believe that a child has submitted personal information, contact us so that we can investigate and take appropriate steps, including deletion where appropriate.
13. Changes to this policy
We will publish changes to this policy with an updated effective date. For material changes, we will provide additional notice appropriate to the circumstances and obtain consent where required. A revised policy does not retrospectively authorise a use of information that required consent or another legal basis at the time it occurred.