Skip to content
← Back to the portfolio

Your information / Your choices

Privacy, explained.

You can explore this portfolio without enabling Google Analytics. There is no automatic analytics banner, and using the site does not count as agreeing to analytics.

Last updated:

Who looks after your information

This policy covers the portfolio at zubaer.com, operated by Md. Zubaer Ahammed. For privacy questions or requests, email [email protected]. Linked products, subdomains and third-party websites may have their own privacy arrangements.

Optional Google Analytics

Google Analytics loads only if you choose “Allow analytics” through Analytics preferences in the footer, or have a valid saved opt-in. Without that choice, this integration sends no analytics events or cookieless analytics pings to Google.

When enabled, it measures page views, contact-link clicks, CV downloads, selected product-link clicks, opening ZuBOT and successfully delivered contact enquiries. These reports help improve the portfolio. They cover consenting visitors only and are not a complete visitor count.

Google receives page and device information and uses analytics cookies. This integration removes URL queries and fragments and does not send contact-form contents, chat messages, email addresses or account IDs in analytics events. Advertising features, Google Signals and enhanced measurement are disabled.

Your choice is saved in your browser for six months. Google Analytics cookies are configured with a six-month lifetime. Event and user data retention in Analytics is set to two months; standard aggregated reports can remain available longer. You can withdraw through Analytics preferences at any time, which stops this integration and removes its first-party Google Analytics cookies. Withdrawal does not automatically erase data already collected.

How Google uses information from sites that use its services ↗

When you get in touch

The contact form sends your name, email, optional company, selected topic and message to me by email so I can respond. The enquiry also includes the submission time and IP address. You may receive an acknowledgement email. Email and hosting services process this information to deliver and operate the service.

These details are used to handle your enquiry and any resulting work, rather than to enrol you in a marketing list. Please avoid including passwords or sensitive information.

Ask ZuBOT

Using the assistant creates a stored conversation. Messages and conversation context are sent through OpenRouter to the AI model provider to generate replies. Conversation records also include technical information such as a hashed IP address and browser information for operating and protecting the service.

If a conversation is handed over for a personal response, your contact email and transcript are passed to me through the handoff and email services. Conversations are available to me in the private administration area. Do not share confidential documents, passwords or sensitive personal information with the assistant. You can use the contact form instead.

Cookies and local storage

Cookies and browser storage support the functions below. Optional analytics is separate from the storage used to deliver features you request.

Session and form protection: the first-party laravel_session and XSRF-TOKEN cookies support sessions, sign-in and protection against forged form submissions. Their configured lifetime is two hours, renewed as you use the site.

Animation preference: zubaer:motion in session storage remembers whether you paused animations. It lasts for the browser tab’s session and is not sent to Google Analytics.

Analytics preference: zubaer.analytics.v1 in local storage records your choice only when you make one. The choice is honoured for 180 days. The stored entry may remain until it is replaced or you clear site data; an expired choice does not enable analytics or open a prompt.

Optional analytics cookies: Google Analytics uses _ga and _ga_* cookies to distinguish browsers and maintain session information after opt-in. Their configured lifetime on this site is 180 days. Use Analytics preferences in the footer to withdraw and remove these first-party cookies.

You can also remove cookies and site storage through your browser settings. Blocking session or security cookies may prevent forms or sign-in from working. Clearing preferences does not opt you into analytics. Separate Google services, including reCAPTCHA where enabled, are described below and have their own privacy information.

Running and protecting the website

Hosting and application services may record request details, including IP addresses and errors, to deliver pages, prevent abuse and investigate faults. Forms use rate limits and, where enabled, Google reCAPTCHA for spam protection. Public pages load fonts from Google, which receives the network information needed to deliver them. Disabling Analytics does not disable these separate services.

External providers may process information outside your country. Their handling of information is also described in their privacy policies, including Google’s privacy policy ↗ and OpenRouter’s privacy policy ↗.

Retention and your requests

Enquiries, email correspondence and stored chat records do not currently have an automatic deletion schedule. Contact me if you want to ask about a record or request its removal. Some information may need to be retained for an ongoing project, security investigation or legal obligation.

Depending on the laws that apply, you may have rights to access, correct or delete personal information, restrict or object to processing, receive a copy, withdraw consent or complain to a data protection authority. Email [email protected] to discuss a request. I may need enough information to verify that the record is yours.

This page will be updated when the site’s data handling changes. The date above identifies the latest revision. See also the Terms of use for the portfolio and assistant.