Muhammad Hassaan Mustafa
02/20/2026, 9:51 AMkapa.ai
02/20/2026, 9:51 AMcity, country_code, county, etc. From the forum thread on Mixpanel Engage, support explicitly notes that: - The Engage stream has a fixed schema in the connector. - Users who had custom / outdated schemas (e.g., numeric IDs instead of strings) saw fields or data fail normalization until they refreshed to the latest schema. [[Mixpanel forum](https://discuss.airbyte.io/t/2814); [Mixpanel no data](https://discuss.airbyte.io/t/2708)] They recommend: 1. Update the Mixpanel source connector to the latest version. [[Mixpanel no data](https://discuss.airbyte.io/t/2708)] 2. Refresh the schema for the Mixpanel connection in the Airbyte UI (Replication > “Refresh schema”). 3. Reset the data after the schema refresh so the new schema is applied to a full resync. [[Mixpanel no data](https://discuss.airbyte.io/t/2708)] 4. Ensure that any custom properties (like IDs or location fields) are typed as string (or ["null","string"]), not numeric, because wrong types can cause normalization to fail and effectively drop fields. [[Mixpanel forum](https://discuss.airbyte.io/t/2814)] If after doing this city, country_code, or similar fields still only appear as null, then either: - Mixpanel is not actually sending those properties for your users, or - The connector’s current Engage schema simply doesn’t include those exact fields for your project; the sources here do not list the full Engage schema, so I can’t confirm their presence or exact names. Because the provided knowledge does not include the full current Engage JSON schema, I can’t definitively say whether city, country_code, or county should be present by default; I can only confirm that schema refresh and correct typing are the recommended fixes when fields appear missing or null. [[Mixpanel no data](https://docs.airbyte.com/integrations/sources/mixpanel#changelog); [Mixpanel forum](https://discuss.airbyte.io/t/2814)]Muhammad Hassaan Mustafa
02/20/2026, 10:53 AMMuhammad Hassaan Mustafa
02/20/2026, 10:56 AMkapa.ai
02/20/2026, 10:56 AMkapa.ai
02/20/2026, 10:57 AM$city and $country_code are expected fields in the current connector version. I can only rely on what’s documented. From what is documented: 1. Engage has a fixed schema in the connector Support explicitly says the Engage stream “has a fixed schema for this stream,” and that users must refresh the schema and reset data after connector upgrades. [[Mixpanel forum](https://discuss.airbyte.io/t/2814); [Mixpanel migration](https://docs.airbyte.com/integrations/sources/mixpanel-migrations#upgrading-to-100)] 2. Custom / extra properties may not be in that fixed schema In the forum thread, a user with custom Mixpanel properties (e.g., custom IDs) ran into issues because their schema didn’t match what the connector expected; support pointed them to the connector’s Engage schema JSON in the repo and told them to align types and schema with that file. [[Mixpanel forum](https://discuss.airbyte.io/t/2708)] 3. If a field is not in the connector schema, it won’t be surfaced as a column The docs and forum posts imply that only fields defined in the connector’s schema are exposed; other properties can end up ignored or only visible in raw JSON. [[Mixpanel forum](https://discuss.airbyte.io/t/2708)] Given that: - If your schema is refreshed and $city / $country_code do not appear at all in the Engage stream schema in Airbyte, then the current connector schema likely does not define them, and Airbyte will not create columns for them. - If they do appear in the schema but are always null, then either: - Mixpanel is not actually sending those properties for your users, or - There is a type mismatch causing normalization to fail on those fields (e.g., schema says number but data is string), similar to the Engage numeric error shown in the forum. [[Mixpanel forum](https://discuss.airbyte.io/t/2708)] Because the provided knowledge does not include the actual Engage schema JSON, I can’t confirm whether $city and $country_code are part of the official schema or how they are typed. What you can do next (based on the docs/forums): 1. In Airbyte, open your Mixpanel source → Engage stream → check the schema: - Verify whether $city / $country_code are present at all. - Verify their declared types (ideally string or ["null","string"]). [[Mixpanel forum](https://discuss.airbyte.io/t/2814)] 2. If they are missing from the schema: - The knowledge sources suggest the connector uses a fixed schema; in that case, those fields are simply not supported by the current Engage schema, and Airbyte will not map them. [[Mixpanel forum](https://discuss.airbyte.io/t/2814)] - As a workaround, you’d need a custom connector or to open an issue / feature request against the Mixpanel source to add those properties. 3. If they are in the schema but null: - Check the _airbyte_raw_... Engage table in your destination to see if the raw JSON actually contains $city / $country_code. - If raw JSON has values but typed columns are null, it’s likely a typing/normalization issue similar to the Engage numeric error case; aligning types to string and resetting the stream is the recommended fix. [[Mixpanel forum](https://discuss.airbyte.io/t/2708)] If you can share whether $city / $country_code appear in the Engage schema in Airbyte and whether they exist in the raw JSON, I can help you interpret that within the limits of the available docs.