Policy Categories
The reasons behind your moderation decisions. Set up policy categories once, then use them in moderation, rules, review queues, user reports and reporting.
A policy category is the reason attached to a moderation decision. When a moderator removes a post, when a rule flags a user, or when an AI Moderator hides a comment, the policy category records which of your guidelines was broken, for example "Harassment", "Spam" or "Underage Protection".
Policy categories are what turn a pile of moderation actions into something you can report on and automate against. They also travel outside Lasso: every category has an identifier that your platform receives in webhooks and sends back through the API when your users file a report.
What you can use them for
Record why each decision was taken, so an action taken today is still explainable months later.
Report on what your moderators actually deal with, in Analytics → Reports and Analytics → Reviews.
Drive automation: a rule can apply a category, and routing rules can send everything flagged under one category to a specialist queue.
Give your users a list of report reasons that stays in sync with the dashboard.
Tell your platform why something was removed, through the
policy_idfield in webhooks.Meet compliance obligations: a category can be configured to file DSA reports automatically.
Where to find them
Policy categories live under Policies in the sidebar, in the Categories section ("Manage your policy categories"). The table lists every category in your workspace, sorted alphabetically, with its name, its Policy Category ID, which types and actions it applies to, its hotkey, the number of rules using it and whether it is available in user reports.
Creating a policy category
Go to Policies and click the button to add a category.
Fill in the Policy Category Name (placeholder: "E.g. Inappropriate Content"). Names are limited to 40 characters.
Click Create new policy category.
The settings dialog opens straight away so you can finish configuring it.
Two things worth knowing about names:
The name determines the Policy Category ID, which is the identifier used everywhere outside the dashboard. "Inappropriate Content" becomes
inappropriate-content. Renaming a category later does not change its ID, so your integration keeps working.Because the ID is derived from the name, two names that produce the same ID are the same category. Creating "Spam!" when "Spam" already exists reuses the existing category instead of creating a second one.
You may also see a category appear that nobody created: Revert Action. Lasso adds it the first time your platform rejects a status change through a webhook and Lasso reverts its own decision.
Category settings
Click any row in the Categories table to open Policy Category Settings.
Information
Name and Description. The description is guidance for whoever picks the category: "This information helps users understand when to select this policy category while submitting a user report." It is up to 400 characters, and it is returned by the user reports API, so it is worth writing properly for anything your users can pick.
User Reports: "Can this policy category be selected when users are reporting content or other users?" Off by default. See user reports.
Settings
Hotkey: "Use this hotkey to quickly apply this policy category to content." Pick a digit from
0to9and pressing it in the action dialog selects that category. Each digit can only be used by one category, so up to ten categories can have one.Policy can be selected by: "Can this policy category be selected by moderators or rules?" Choose Moderators & Rules, Only Moderators or Only Rules. Use Only Rules for internal bookkeeping categories you do not want your team choosing by hand, and Only Moderators for judgement calls you never want automated.
Available for types: "For which types can this be used as a policy category?" Either All, or one specific object type (content, users or subcategories, under whatever names your workspace uses). A user-only category like "Repeat Offender" will not clutter the dropdown when a moderator is acting on a post.
Enabled for actions: "For which of the actions can this be used as a policy category?" A checkbox per action, using your workspace's own wording for allow, flag and remove, plus Strikes if strikes are enabled. Untick the ones that make no sense, for example an "Approved" category that should only ever be used when allowing content.
The dialog also has a collapsible Rules with this policy category section listing every rule that applies it, or "No rules tied to this policy". Click Update to save.
If your workspace has multiple languages enabled, the Name and Description fields appear once per language and are translated automatically when you create a category. You can correct any translation by hand.
If you have the Sift integration, a Sift Decision field lets you map the category onto a decision in Sift. Lasso forwards it when a user's status changes.
Using categories while moderating
Wherever a moderator takes an action, the confirmation dialog has a Policy category field with the placeholder "Select policy category". Only categories that fit are offered: the object type has to match, the action has to be enabled on the category, the category has to be selectable by moderators, and, in a review queue, the category has to be allowed in that queue.
Under Settings → Moderation preferences you can make this smoother:
Set a default policy category per action, so the right one is preselected. Once a default is configured, moderators can Shift+Click an action button to act without opening the dialog at all.
Make a category required for a given action, so no decision is recorded without a reason.
Both are configured separately for content, users and subcategories. See user moderation for the user side.

Categories in rules
Every rule action that changes a status can carry a policy category, chosen with the Policy Category field on the rule. That is how automated decisions end up as explainable as manual ones. A rule that bans a user and removes their content can set a separate Policy Category Content for the removals.
Rules count as automation rather than a moderator, so a category set to Only Moderators cannot be attached to a rule.
Categories are also something rules can match on. Routing rules for review queues have a Policy Category condition ("Condition based on the policy category it got flagged for") with is in and is not in operators, so you can send everything flagged under your child safety category to a dedicated queue.
When you export and import custom moderation rules between workspaces, categories are carried by their ID. Any category the target workspace is missing is created automatically, and the import warns you that it did so.
Categories in review queues
A review queue can be limited to a subset of categories. On the queue, untick All policies are available in this queue and pick the ones you want under Policies available in this queue. Moderators working that queue then only see those categories in their action dialog.
Categories in user reports
Categories with User Reports ticked are the reasons your own users choose from when they report something. GET /api/v1/user-reports returns them (id, name, description and, with translations enabled, a translations object), and you send the id back as policy_id when submitting the report. Full details are on the user reports page.
Categories and AI Moderators
An AI Moderator decides using a written policy, and the sections of that policy are your policy categories. Add a category to a policy document, write the guidance for it there, and the AI Moderator can judge content against it and apply that category to its decisions, along with a short explanation of its reasoning.
A category that is not part of the written policy, or that is in it but has no text, is invisible to the AI Moderator. It still works normally for moderators and rules.
Categories in the API and webhooks
There is no endpoint for creating or listing all your policy categories. They appear in the API in two places, and always by their Policy Category ID, never the display name:
POST /api/v1/user-reportstakesreport.policy_id. An unknown value returns a400withPolicy not found.POST /api/v1/statustakes an optionalpolicy_id, so a decision your own platform makes is recorded with the same reason your moderators would use. An unknown value here is ignored silently and the status change still goes through, so check your spelling.
On the way out, every action webhook that has a category attached carries:
policy_id
The Policy Category ID, for example inappropriate-content.
policy_name
The display name at the time of the action, for example Inappropriate Content.
policy_information
Optional extra reasoning, filled in by AI Moderators and by decisions your platform reverts through the API.
Do not confuse policy_id with the category_id and subcategory_id fields inside the content object of the same payload. Those describe where the content lives on your platform, not why it was actioned. The full payload is documented under webhooks.
Reporting on categories
Analytics → Reports has Reports by Policy, and Analytics → Reviews has Reviews by Policy, both broken down over time and as a total for the period. Decisions taken without a category are grouped as "No policy", and decisions taken under a category that has since been deleted show as "Deleted Policy".
Renaming and deleting
Renaming is safe. The Policy Category ID stays the same, past decisions keep pointing at the category, and your integration does not need to change.
Deleting is restricted. The delete button is disabled, with the tooltip "Cannot delete policy category that is used by a rule or in a policy", as long as any rule uses the category or it is part of a written policy. Remove those references first.
When you do delete a category:
It disappears from every dropdown, but past actions, reports and compliance reports keep their reason. They show up as "Deleted Policy" in analytics.
Creating a category with the same name again restores the original one, hotkey, settings and history included.
Choosing your categories
Categories work best when they are few and clearly separated, so a moderator picking one under time pressure does not have to think about it. A set of eight to twelve is typical. Most platforms end up with something close to:
Harassment and Discrimination
Hate Speech and Extremism
Obscenity and Profanity
Nudity and Sexual Content
Self-Harm or Threats
Personal and Sensitive Information
Fraud and Scams
Spam
Underage Protection
Add whatever is specific to your product (cheating and exploits for a game, prohibited goods for a marketplace, misrepresentation for a dating app), plus a couple of internal categories that are not really violations, such as "User Feedback" or a rules-only category for automated cleanup.
Last updated