
Rules and ethics
Part of Brand sentiment analysis data: what to keep, cut and delete
Brand sentiment analysis data: what to keep, cut and delete
Field-by-field UK GDPR handling for brand sentiment analysis data: which fields to keep, how to filter tone, and how to delete every copy on request.
What to take away
- Keep the sentiment label and cut the identitya trend report rarely needs handles, threads or exact timestamps.
- Treat post text as a working copy. Classify it, then delete it or keep only the minimum excerpt a named case needs.
- Tone can reveal health, politics or religion, so filter those posts at intake, not after storage.
- Review every field against one written purpose, and record the owner and the review date.
- Deletion has to work in every tool and spreadsheet that holds the data, or erasure and access requests fail.
Decide the purpose before you pick the fields
Minimisation starts with one written question that the dataset must answer. UK GDPR Article 5(1)(c) requires personal data to be adequate, relevant and limited to what is necessary. The ICO's data minimisation guidance says to identify the minimum amount of personal data you need for your purpose.
A purpose such as "spot a service failure within a day" justifies a sentiment label and a short-lived copy of the post. It does not justify a stitched profile of each author. When the purpose is trend reporting, person-level fields have no job to do and should not be collected.
A keep-or-cut table for sentiment fields
Use the table as a starting point for each field, and record any project-specific reason for departing from it. Most projects keep the label and cut most of what surrounds it.
| Field | Keep when | Cut or reduce when |
|---|---|---|
| Sentiment label | Needed to report trends or service issues | It can be reported in aggregate without retaining a person-level record |
| Post text | A short-lived copy is needed to classify or investigate a specific issue | Classification is complete; remove the text or retain only the minimum necessary excerpt |
| Handle or profile link | Needed to respond to a specific customer or verify a case | The work is trend analysis; remove direct identifiers from the analysis dataset |
| Timestamp | Needed to understand when an issue occurred | Exact time is unnecessary; reduce it to a less precise period or remove it |
| Thread, location or profile details | A documented question cannot be answered without them | They are not necessary to the analysis; do not collect or retain them |
Sentiment data minimisation table
Data element
- Raw post text
- Verbatim quote with date
- Account handle
- Only where reply planned
- Sentiment label
- Label plus model version
- Inferred traits
- Nothing by default
- Location
- Region, where it changes answer
- Retention
- Fixed period for raw text
Keep
- Raw post text
- Copies past retention date
- Account handle
- Full posting history
- Sentiment label
- Confidence score as fact
- Inferred traits
- Health, politics, sexuality
- Location
- Precise coordinates
- Retention
- Open-ended storage
Cut or shorten
- Raw post text
- Account handle
- Sentiment label
- Inferred traits
- Location
- Retention
Why the label itself still counts
A sentiment label is personal data when it sits beside an identifiable person, because it is a judgement about that individual. The same applies to a sentiment score stored next to a handle. Remove the handle and report weekly counts, and the output points at nobody.
Even then, test the output. A rare complaint in a small thread can be traced back to its author, so ask a colleague whether they could name the person from the dashboard alone. If they could, the output is still personal data.
When an automated classifier assigns the labels, check what it stores. Ask the supplier of any tool covered by AI in social listening whether it keeps the raw text beside the score, and for how long.
Tone reveals special category data
Opinions are where special category data appears. A post about a delayed operation is health data, and a comment about a protest may reveal political opinion. Article 9(1) of UK GDPR prohibits processing such data unless an Article 9(2) condition applies. Article 6(1)(f) alone is not enough.
Where a team relies on substantial public interest under Article 9(2)(g), it must also meet a specific condition in Part 2 of Schedule 1 to the Data Protection Act 2018, with any safeguards that go with it. Marketing analytics rarely meets such a condition.
Filter at intake. Discard posts that reveal health, politics, religion, sexuality or trade union views unless you have identified an Article 9(2) condition, any required Schedule 1 condition and a clear purpose. Where the aim is service recovery, handle a health mention without keeping the clinical detail.
If the work surfaces criminal offence data, Article 10 and section 10 of the DPA 2018 also apply. Identify the authorisation and any relevant Schedule 1 condition before you process or retain it.
Review each field in five steps
Run the review on the dataset, not on the policy. Work through the five steps for every field the pipeline stores.
- List every field, including those a tool adds to exports by default.
- Write the one purpose each field serves.
- Ask whether a smaller sample, or a longer aggregation window, answers the same question.
- Set a deletion pointwhen classification ends, when the case closes or on the review date.
- Record the decision, the owner and the review date in your data protection records.
Repeat the review when a tool adds a field or a new question arrives. A column that appeared by default still counts as data you hold, and it needs a purpose like any other.
Make deletion work in every copy
Access and erasure requests only work if you know where every copy sits. Article 15 gives the right of access and Article 17 the right to erasure, which is not absolute where data is needed for a legal claim.
A request can reach sentiment records and internal notes that mention the person. If raw text sits in three tools and a spreadsheet, you cannot answer either request reliably. Under Article 12(3), you normally have one month from receiving a request to respond.
Deletion capability is a buying question, so settle it in the supplier's deletion and exit terms before signing. Then test it with one real account, using the failures to rehearse as a script.
Before the dataset goes live
- Every stored field has one written purpose.
- Handles and exact timestamps are cut from the trend dataset.
- Posts revealing special category data are filtered at intake.
- Every copy of the raw text is listed with a deletion point.
- A test request for one account has been answered end to end.
Common questions
Can we keep the label after deleting the post text?
Often yes, if nothing links the label back to a person. A bare weekly count does not identify anyone. A label stored beside a handle or a thread link is still personal data, so cut the link first.
How long can we keep identifiable sentiment data?
There is no single UK GDPR period for all sentiment data. Under Article 5(1)(e), keep identifiable data only as long as the purpose needs it, set a project-specific period in your records, then delete or anonymise it. Longer storage needs a documented reason.
Do we have to tell people we are listening?
Yes. Transparency duties apply to monitoring as much as to a mailing list. A privacy notice should name social monitoring, the data categories and the retention period, and a disclosure policy keeps the wording consistent across teams.



