Privacy Policy
Your privacy matters to us. Here's how we handle your data.
TL;DR Summary
Website and native-app preferences are stored locally on your device. Weather requests are processed by our service and OpenWeather, and usage events may be stored by analytics providers. The ChatGPT card starts with optional usage stats on for each new card and has its own off control. The red button below clears local app data; it does not delete events already sent to providers or information held by ChatGPT. See the separate controls below.
Last Updated: October 2, 2026
Information We Collect
📍 Location Data
Weather lookups use a location to retrieve conditions or forecasts from OpenWeather. The website and native app can remember your last used location on your device. The ChatGPT app uses a city query or optional approximate location supplied by ChatGPT, as described below.
⚙️ User Preferences
Website and native-app preferences stored locally on your device: temperature unit, theme (light/dark), profanity level, custom weather words, text-to-speech voice selection.Storage: localStorage on your device only.
🌍 Geo-Fencing Data
Country detection for USA and UK access using IP geolocation and timezone.Storage: sessionStorage (cleared when browser closes).
📊 Usage Data
Usage statistics help us improve the service. Website PostHog analytics uses the website cookie controls. The ChatGPT card separately sends limited interaction events to PostHog with a random temporary card identifier while Usage stats is on.Storage: Analytics providers, including PostHog and Vercel; see the service-specific details below.
Information Not Required for Weather
Weather lookups do not require the following information. If you contact us, we receive the contact details and information you choose to send.
✓Names, email addresses, or phone numbers
✓Physical addresses or postal codes
✓Payment information or financial data
✓Social media profiles or identifiers
✓Individual browsing history details
✓Photos, videos, or files
How We Use Your Data
Weather Services
Your location data is used to fetch accurate weather information from the OpenWeatherMap API.
Service Improvement
Usage data helps us understand how to improve features, fix bugs, and enhance user experience.
Personalization
We use your preferences (temperature units, obscenity level) to customize your weather experience.
Cookies
Our website uses cookies to provide our weather service and show you relevant advertisements. Cookies are small text files stored on your device.
Cookie Consent
On the website, we only set non-essential cookies (analytics and advertising) after you have given your consent. Essential cookies are required for the app to function and are always active.
For detailed information about the cookies we use, please see our Cookie Policy.
Managing Cookies
You can manage your cookie preferences at any time through the cookie consent banner or by visiting our Cookie Policy page.
These website cookie controls are separate from the ChatGPT card’s Usage stats control. The card does not use cookies for its usage events; its default-on setting and temporary identifier are described below.
Weather With Attitude in ChatGPT
Weather lookups
When you request weather, our app receives the city you ask for and your selected temperature unit. If you have not specified a city, the tool can use an approximate city, region and country supplied by ChatGPT. Our server sends the location query to OpenWeather for geocoding, then sends the resolved coordinates to OpenWeather to obtain current conditions. The resolved city, temperature, conditions, observation time and weather commentary are returned through ChatGPT and displayed in the card. The app does not ask for precise GPS permission or a Weather With Attitude account.
Card state and speech
When available, the card uses ChatGPT’s widget state API to remember the displayed location query, observation time, selected roast and temperature unit. OpenAI handles that host-side state under its own policies. Speak uses the browser or device’s available speech service after you press the button. Our app does not use your microphone or record your voice, and it does not call a separate paid speech API. Speech availability and processing can depend on the ChatGPT host and device; if playback is unavailable, the card points you to its website link.
Optional usage statistics
Usage stats start on each time a new card is mounted. A visible disclosure and Usage stats on/off button appear in the card. While usage stats are on, the card sends a limited set of allowlisted interaction events through our server to PostHog for storage and analysis. These describe whether the card was viewed, a weather search was requested or succeeded/failed, Re-roast was selected, speech was requested/started/completed/failed/stopped, or the website link was selected.
Each enabled card uses a randomly generated temporary identifier to connect events within that card. The event payload contains that identifier, the event name, the app platform, the widget version and the Wuss attitude level. It does not include the city, coordinates, your prompt, the roast text, an account identifier or a browser fingerprint. We configure these events with person-profile creation and GeoIP enrichment disabled and with a null IP property.
The card does not use a cookie or a persistent cross-site identifier for these usage events. Turning Usage stats off stops future usage events from that card; it does not remove events already sent. Turning stats back on creates a new random card identifier. The off setting is held in the current card’s memory and is not a permanent account-wide preference. A new card starts with stats on again.
Hosting and website visits
Our Vercel-hosted service processes the technical metadata needed to receive, operate and rate-limit requests, including the client IP used for rate limiting. Opening the website takes you to a separate site with its own cookie controls. The card’s website link includes campaign parameters identifying the visit as coming from the ChatGPT weather card; it does not include your city or roast.
Retention and questions
For questions about retention of usage events or hosting data, or requests to access or delete data, contact privacy@weatherwithattitude.com. Turning stats off or clearing local app data does not delete information already held by these providers. OpenAI’s privacy policy explains its handling of ChatGPT conversations and host-side information.
Legal Basis for Processing (UK GDPR)
Under UK GDPR, we must have a legal basis for processing your personal data. The following statements cover our website and native-app processing. The ChatGPT card’s separate data flows and controls are described above.
📍 Location Data
Legal Basis: Consent (Article 6(1)(a))
Purpose: To provide accurate weather forecasts
You give consent when you allow location access in your browser.
⚙️ User Preferences
Legal Basis: Legitimate Interest (Article 6(1)(f))
Purpose: To remember your preferences and improve your experience
This is necessary for the app to function as you expect.
🌍 Geo-Fencing Data
Legal Basis: Legitimate Interest (Article 6(1)(f))
Purpose: To enforce regional access restrictions
This is necessary to comply with data licensing agreements.
📊 Website and Native-App Analytics Data
Legal Basis: Legitimate Interest (Article 6(1)(f))
Purpose: To improve our service and fix bugs
Website PostHog analytics is subject to the cookie controls described above.
📢 Advertising Data
Legal Basis: Consent (Article 6(1)(a))
Purpose: To show relevant advertisements
You give consent through our cookie consent banner. You can withdraw consent at any time.
Data Protection
Encryption
All data transmission is encrypted using HTTPS/TLS protocols.
No Account Required for Weather
Weather lookups do not require a Weather With Attitude account or contact details. This does not mean that no data is stored: local preferences, analytics events and provider processing are described in this policy.
Minimal Data Collection
The ChatGPT card’s usage-event payload is limited to the fields described above and excludes location, prompts and roast text.
Third-Party Services & Your Data
🌦️ OpenWeatherMap
We use the OpenWeatherMap API to provide weather data. Your location coordinates are sent to OpenWeatherMap to fetch conditions and forecasts. The ChatGPT app also sends the location query for geocoding.
OpenWeatherMap handles these requests under its own data practices. Contact us with questions about weather-provider processing.
📢 Google AdSense / AdMob
Google collects browsing data for personalized ads. This is separate from our app data. We only load AdSense after you have consented to advertising cookies.
Storage: Google's servers • Consent Required: Yes (via cookie consent banner) • You control: adssettings.google.com to opt-out of personalized ads
☁️ Vercel Hosting and Analytics
Vercel hosts our website and API and provides website analytics. Hosting processes technical request metadata separately from the ChatGPT usage-event payload sent to PostHog.
Provider: Vercel • Questions: Contact us about hosting data, retention or data requests
📊 PostHog (Product Analytics)
On our website, we use PostHog to understand how features are used. It sets a per-device identifier and records product-usage events and properties such as your chosen attitude level and how you reached us (referrer / campaign tags). It loads only after you accept analytics cookies. The ChatGPT card uses a separate server-side capture flow with a temporary card identifier and its own Usage stats control, as described above.
Storage: PostHog servers • Website control: decline or withdraw in cookie preferences • ChatGPT control: turn Usage stats off for the current card; contact us about events already sent
🌐 IP Geolocation Services
We use ipapi.co, ip-api.com, and ipwhois.app to detect your country for geo-fencing.
Storage: Not stored by us • You control: Data cleared on browser close
🤖 ChatGPT App Distribution
Weather With Attitude is available as an app within ChatGPT. When you use our service via ChatGPT, your requested city and temperature unit, or optional approximate city, region and country supplied by ChatGPT, are processed by our weather API. Tool responses (weather data and attitude text) flow through ChatGPT's servers before being displayed to you.
Card state can include the location query, observation time, selected roast and unit. The card’s optional usage events are handled separately, as described in the Weather With Attitude in ChatGPT section above.
Host-side information: Refer to OpenAI's privacy policy for their data handling practices
Your Rights & How to Delete Your Data
Local Website and Native-App Data
The following preferences and session data are stored locally on your device:
- • User preferences (temperature unit, theme, obscenity level)
- • Custom weather words
- • Location history (last used location)
- • Text-to-speech voice selection
- • PWA install status
- • Session geo-fencing data
Clear Local App Data:
Clears local app preferences and session data, then restarts the app. Does not delete analytics events, hosting data or ChatGPT host-side state.
Third-Party Data (You Control These Separately)
Google AdSense/AdMob:
Opt-out of personalized ads and manage your ad data:
Visit adssettings.google.com →PostHog and Vercel:
Contact privacy@weatherwithattitude.com about retention, access or deletion of provider-held data. Turning ChatGPT Usage stats off stops future events from the current card; it does not delete events already sent.
Alternative: Clear All Browser Data
To clear browser-held cookies and cached data, use your browser settings. This does not delete information already held by service providers:
- • Chrome: Settings → Privacy → Clear browsing data
- • Firefox: Preferences → Privacy → Clear Data
- • Safari: Preferences → Privacy → Manage Website Data
Contact Us
If you have any questions about this privacy policy or want to exercise your rights, please contact us:
Email: privacy@weatherwithattitude.com
Subject: Privacy Policy Inquiry
We're committed to protecting your privacy and being transparent about our data practices.
This privacy policy may be updated periodically. Check back for changes.