Skip to main content
Solved

Unable to update profile through CSV Upload


Forum|alt.badge.img+3

Hi Community!

There are several thousand profiles that have an incorrect City, State and Country assigned to them. I’ve uploaded a CSV file to try to overwrite the values, but I was unsuccessful.

It’s important to note that I don’t have the profiles’ correct City, State or Country; so the CSV file I uploaded contained blank entries for the City, State, and Country; I was hoping that may overwrite the incorrect values, but it didn’t.

Is there a way that the incorrect values can be scrubbed from these records?

Thanks,
Bill

Best answer by alex.hong

Hi @bill_wishgarden,

Thanks for sharing to the Community. I believe that the issue regarding your CSV import is because it is treating these blank fields as missing columns and therefore cannot import. Typically this error occurs when there are multiple blank columns at the end of the CSV, which to our system look like duplicates.  


However, I think I know of one workaround so you can use a CSV upload to unset these values from the impacted profiles. 
 
First, export all profiles that you are looking to update (you may need to export all profiles initially, then filter for the contacts to change values). When you export, you can export only email/whatever values you want to change; you don't need to export all profile properties.
 
Once you have that CSV you will want to update your CSV to reflect the following:

  • The first column should have the header "Email", with each row corresponding to the email address a profiles whose first name you want to unset.
  • The second column should have the header "$unset", and each row should contain the same entry of ["$city","$region"] 


Your CSV that you are importing should like this (just those two columns), but note you'll be using ["$city","$region"]  instead of ["first_name"]
?name=inline808950009.png

Now you can import this back into that same list.
Once you are at the Import Review page, you should map this column to the Klaviyo Field "$unset" (you'll have to type this in yourself as it won't populate as a default field), and then make sure that you indicate the data type of that column as a List.
The import screen should look like this:
?name=inline746659309.png
 
 
 
 
This should remove the existing values stored for your properties. 

 

If that did not work, I would reach out to our Support team so they can assist on the back-end.

To add or update a profile property, you'd need a CSV with Email in one column, and the value of the property you'd like to add in another column. If you're adding the same value to everyone, you can copy that value down the whole column when setting up your CSV. 

From there, you can upload the CSV, and when mapping the new property, select the option "Create New Profile Property" (if it doesn't already exist in Klaviyo). 

If you're interested in learning more about this process, I'd recommend this resource: Create and Add Contacts to a New List

 

All the best,

Alex

 

View original
Did this topic or the replies in the thread help you find an answer to your question?

5 replies

alex.hong
Forum|alt.badge.img+58
  • Klaviyo Alum
  • 1552 replies
  • Answer
  • June 3, 2022

Hi @bill_wishgarden,

Thanks for sharing to the Community. I believe that the issue regarding your CSV import is because it is treating these blank fields as missing columns and therefore cannot import. Typically this error occurs when there are multiple blank columns at the end of the CSV, which to our system look like duplicates.  


However, I think I know of one workaround so you can use a CSV upload to unset these values from the impacted profiles. 
 
First, export all profiles that you are looking to update (you may need to export all profiles initially, then filter for the contacts to change values). When you export, you can export only email/whatever values you want to change; you don't need to export all profile properties.
 
Once you have that CSV you will want to update your CSV to reflect the following:

  • The first column should have the header "Email", with each row corresponding to the email address a profiles whose first name you want to unset.
  • The second column should have the header "$unset", and each row should contain the same entry of ["$city","$region"] 


Your CSV that you are importing should like this (just those two columns), but note you'll be using ["$city","$region"]  instead of ["first_name"]
?name=inline808950009.png

Now you can import this back into that same list.
Once you are at the Import Review page, you should map this column to the Klaviyo Field "$unset" (you'll have to type this in yourself as it won't populate as a default field), and then make sure that you indicate the data type of that column as a List.
The import screen should look like this:
?name=inline746659309.png
 
 
 
 
This should remove the existing values stored for your properties. 

 

If that did not work, I would reach out to our Support team so they can assist on the back-end.

To add or update a profile property, you'd need a CSV with Email in one column, and the value of the property you'd like to add in another column. If you're adding the same value to everyone, you can copy that value down the whole column when setting up your CSV. 

From there, you can upload the CSV, and when mapping the new property, select the option "Create New Profile Property" (if it doesn't already exist in Klaviyo). 

If you're interested in learning more about this process, I'd recommend this resource: Create and Add Contacts to a New List

 

All the best,

Alex

 


Forum|alt.badge.img+3

That worked perfectly! Thanks so much Alex!


alex.hong
Forum|alt.badge.img+58
  • Klaviyo Alum
  • 1552 replies
  • June 13, 2022

Glad I could help! 


Forum|alt.badge.img
  • Contributor I
  • 1 reply
  • January 27, 2025

Hi,  I tried following this $unset import, even tried figuring it out with customer support.  I did notice you can’t import contacts to a segement so I had to convert my segment to a list.  I imported with the $unset column, along with the “$Property field” under that column.  I ran the import, it stated it was updating the records.  When I go back into that customer’s profile, there are no changes and the field is still there containing the data I wanted to remove.


JessFosnough
Expert Problem Solver IV
Forum|alt.badge.img+23
  • Expert Problem Solver IV
  • 194 replies
  • January 29, 2025

Hi ​@Karon ,

I have another suggestion for you. When I want to remove a field, I build a flow based on a list; the list can be empty. Then in the flow, I choose the action: Profile Property Update
In the settings for the action, choose Delete Existing Property, then fill in the property name (or select from the drop down).
Upload your contacts to the trigger list, and it should remove the field.
Note that this will completely remove the property from a subscriber’s profile, it will not set the property to be blank, or null. The property will still exist for subscribers that are not in the trigger list. Once the flow is complete, you can then delete the list if needed.
Hope this helps! Let me know if I can explain anything further.